硬件地址識(shí)別管理

上傳人:盧卡****7 文檔編號(hào):26127623 上傳時(shí)間:2021-08-06 格式:DOC 頁數(shù):4 大小:15.01KB
收藏 版權(quán)申訴 舉報(bào) 下載
硬件地址識(shí)別管理_第1頁
第1頁 / 共4頁
硬件地址識(shí)別管理_第2頁
第2頁 / 共4頁
硬件地址識(shí)別管理_第3頁
第3頁 / 共4頁

下載文檔到電腦,查找使用更方便

22 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《硬件地址識(shí)別管理》由會(huì)員分享,可在線閱讀,更多相關(guān)《硬件地址識(shí)別管理(4頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、硬件地址識(shí)別管理 摘要:在通信和控制系統(tǒng)中,常使用異步串行通信控制器(UART)實(shí)現(xiàn)系統(tǒng)輔助信息的傳輸。為實(shí)現(xiàn)多點(diǎn)通信,通常用軟件識(shí)別發(fā)往本站點(diǎn)或其它站點(diǎn)的數(shù)據(jù),這會(huì)加大CPU的開銷。介紹了一種基于FPGA的UARTIP,由硬件實(shí)現(xiàn)多點(diǎn)通信時(shí)的數(shù)據(jù)過濾功能,降低了CPU的負(fù)擔(dān),提高了系統(tǒng)性能。 關(guān)鍵詞:UART多點(diǎn)通信FPGA知識(shí)產(chǎn)權(quán) 在通信和控制系統(tǒng)中,常使用異步串行通信實(shí)現(xiàn)多塊單板之間的輔助通信,各個(gè)單板通過總線方式連接。為了實(shí)現(xiàn)點(diǎn)對點(diǎn)通信,需要由軟件定義一套較復(fù)雜的通信協(xié)議,過濾往來的數(shù)據(jù),消耗了CPU較多的時(shí)間。89C51單片機(jī)有一種九位通信方式,采用一位地址位來實(shí)現(xiàn)通信對象的選

2、擇,只對發(fā)往本地址的地址發(fā)生中斷進(jìn)而接收數(shù)據(jù)。通用的UART芯片如16C550和89C51等構(gòu)成總線式的通信系統(tǒng)時(shí),需要由CPU通過軟件處理接收到的地址和產(chǎn)生九位的數(shù)據(jù)。本文介紹的UART采用VerilogHDL硬件描述語言設(shè)計(jì),可以用FPGA實(shí)現(xiàn),可應(yīng)用于SoC設(shè)計(jì)中。其主要特性如下: 全硬件地址識(shí)別,過濾數(shù)據(jù)不需要CPU的介入;支持一個(gè)特殊地址,可用于監(jiān)聽和廣播。 支持查詢和中斷兩種工作方式,中斷可編程。 接收和發(fā)送通路分別有128ByteFIFO,每個(gè)接收字節(jié)附帶狀態(tài)信息。 設(shè)計(jì)采用VerilogHDL語言,全同步接口,可移植性好。 支持自環(huán)測試功能。 波特率可以編程,支持八

3、位或者九位兩種數(shù)據(jù)格式。 設(shè)計(jì)的UART的九位串行數(shù)據(jù)格式如圖1所示。在空閑狀態(tài),數(shù)據(jù)線處于高電平狀態(tài)??偩€由高到低跳變,寬度為一個(gè)波特率時(shí)間的負(fù)脈沖為開始位,然后是8bit的數(shù)據(jù)位。數(shù)據(jù)位后面是lbit的地址信息位。如果此位是1,表示發(fā)送的字節(jié)是地址信息;如果此位是0,傳輸?shù)氖钦?shù)據(jù)信息。地址指示位后是串行數(shù)據(jù)的停止位。 1UART設(shè)計(jì) UART采用模塊化、層次化的設(shè)計(jì)思想,全部設(shè)計(jì)都采用VerilogHDL實(shí)現(xiàn),其組成框圖如圖2所示。整個(gè)UARTIP由串行數(shù)據(jù)發(fā)送模塊、串行數(shù)據(jù)接收模塊、接收地址識(shí)別模塊、接收和發(fā)送HIFO、總線接口邏輯、寄存器和控制邏輯構(gòu)成。串行發(fā)送模塊和接收完成

4、并/串及串/并的轉(zhuǎn)換,接收地址的識(shí)別由接收地址識(shí)別模塊完成。發(fā)送和接收HIFO用于緩存發(fā)送和接收的數(shù)據(jù)??偩€接口邏輯用于連接UARTIP內(nèi)部總線和HOST接口。寄存器和控制邏輯實(shí)現(xiàn)UARTIP內(nèi)部所有數(shù)據(jù)的收發(fā)、控制和狀態(tài)寄存器、內(nèi)部中斷的控制及波特率信號(hào)的產(chǎn)生。以下詳細(xì)說明主要部分的設(shè)計(jì)原理。 1.1串行數(shù)據(jù)發(fā)送模塊 串行數(shù)據(jù)發(fā)送模塊將數(shù)據(jù)或地址碼由并行轉(zhuǎn)換為串行,并從串行總線輸出。設(shè)計(jì)采用有限狀態(tài)機(jī)實(shí)現(xiàn),分為空閑、取數(shù)、發(fā)送三個(gè)狀態(tài)。其狀態(tài)遷移如圖3所示。各個(gè)狀態(tài)說明如下: 空閑狀態(tài):狀態(tài)機(jī)不斷檢測發(fā)送使能位、UART使能位和發(fā)送FIFO空/滿標(biāo)志位,如果使能位為高、UART使能打開

5、且FIFO空標(biāo)志位為低,串行發(fā)送進(jìn)入取數(shù)狀態(tài)。 取數(shù)狀態(tài):在此狀態(tài),分兩個(gè)周期從發(fā)送FIFO中取出待發(fā)送的數(shù)據(jù)或者地址,然后進(jìn)入發(fā)送狀態(tài)。 發(fā)送狀態(tài):在此狀態(tài),狀態(tài)機(jī)按照九位串行數(shù)據(jù)的格式依次發(fā)送開始位、數(shù)據(jù)位、地址指示位。待停止位發(fā)送完畢后,返回空閑狀態(tài)。一個(gè)字節(jié)的數(shù)據(jù)發(fā)送完畢后,進(jìn)行下一個(gè)字節(jié)數(shù)據(jù)的發(fā)送流程。 1.2串行數(shù)據(jù)接收模塊 串行數(shù)據(jù)接收模塊用于檢測串行數(shù)據(jù)的開始位,將串行總線上的串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)并輸出。接收邏輯也采用有限狀態(tài)機(jī)實(shí)現(xiàn),分為空閑狀態(tài)、尋找開始位、接收數(shù)據(jù)和保存數(shù)據(jù)四個(gè)狀態(tài)。其狀態(tài)遷移圖如圖4所示。各個(gè)狀態(tài)說明如下: 空閑狀態(tài):在此狀態(tài),不斷檢測接收使能

6、、UART使能和串行輸入信號(hào)的狀態(tài)。如果串行輸入信號(hào)出現(xiàn)由高到低的電平變化且UART使能和接收使能都為高,則將采樣計(jì)數(shù)器復(fù)位,并進(jìn)入尋找開始位狀態(tài)。 尋找開始位:在此狀態(tài),狀態(tài)機(jī)等待半個(gè)波特率的時(shí)間,然后重新檢測串行輸入的電平。如果為低,則判斷收到的開始位有效,進(jìn)入接收數(shù)據(jù)狀態(tài);否則認(rèn)為數(shù)據(jù)總線上出現(xiàn)干擾,開始位無效,重新返回空閑狀態(tài)。 接收數(shù)據(jù):在此狀態(tài),依次接收串行數(shù)據(jù)線上的數(shù)據(jù)位、地址指示位和停止位,結(jié)束后進(jìn)入保存數(shù)據(jù)狀態(tài)。 保存數(shù)據(jù):此狀態(tài)將收到的串行數(shù)據(jù)以并行方式從接口的并行總線輸出,然后返回空閑狀態(tài),準(zhǔn)備進(jìn)行下一個(gè)字節(jié)數(shù)據(jù)的搜索和接收。 為提高對串行輸入上突發(fā)干擾的抵抗能力

7、,對于接收數(shù)據(jù),在脈沖的中間位置連續(xù)采樣三次,較多的電平作為接收的有效數(shù)據(jù)。所有接收數(shù)據(jù)的采樣頻率為接收波特率的16倍。 1.3硬件地址識(shí)別模塊 硬件地址識(shí)別模塊用于從接收到的數(shù)據(jù)中判斷出地址和數(shù)據(jù),在地址識(shí)別功能打開時(shí),選擇數(shù)據(jù)通過或者丟棄;而該功能關(guān)閉時(shí),所有數(shù)據(jù)都會(huì)通過。地址識(shí)別模塊是一個(gè)有兩個(gè)狀態(tài)的有限狀態(tài)機(jī),分為地址和數(shù)據(jù)兩個(gè)狀態(tài)。其狀態(tài)遷移圖如圖5所示。狀態(tài)說明如下: 地址狀態(tài):在此狀態(tài)時(shí),判斷接收到的數(shù)據(jù)以及地址識(shí)別使能位。如果地址識(shí)別功能沒有打開,對于接收的任何地址,都進(jìn)入數(shù)據(jù)狀態(tài)。如果地址識(shí)別功能打開,則將收到的地址和本地地址比較,如果相等,則保存此地址,進(jìn)入數(shù)據(jù)狀態(tài);

8、否則繼續(xù)在此狀態(tài)接收數(shù)據(jù)和地址,將收到的數(shù)據(jù)忽略。 數(shù)據(jù)狀態(tài):將接收到的數(shù)據(jù)輸出,直到收到地址位時(shí),返回地址狀態(tài),處理地址。 為實(shí)現(xiàn)監(jiān)聽和廣播功能,將地址255作為特殊地址,它可以和任何地址匹配。若本站的地址為255,此站點(diǎn)可以接收任何地址的數(shù)據(jù),此功能可以用于監(jiān)聽總線上的數(shù)據(jù);若發(fā)送數(shù)據(jù)的目的地址為255,則任何站點(diǎn)都會(huì)接收到此數(shù)據(jù),此功能可以用于發(fā)送廣播數(shù)據(jù)。 1.4FIFO設(shè)計(jì) FIFO由控制邏輯和雙口RAM組成,控制邏輯用來實(shí)現(xiàn)將一個(gè)雙口RAM轉(zhuǎn)換成兩個(gè)FIFO的功能,這兩個(gè)FIFO分別用于發(fā)送和接收數(shù)據(jù)緩存;中斷控制用于在中斷工作方式時(shí)管理UART內(nèi)部的中斷狀態(tài)和控制信息。

9、 為減少所需塊RAM的數(shù)量,接收和發(fā)送FIFO使用同一個(gè)塊RAM實(shí)現(xiàn),使用仲裁機(jī)制保證兩個(gè)FIFO的四個(gè)端口,在同一時(shí)刻最多只有兩個(gè)操作,不影響對FIFO的讀寫。 1.5總線接口 UART采用同步接口,所有信號(hào)都在系統(tǒng)時(shí)鐘的上升沿采樣,設(shè)備的握手用一位應(yīng)答信號(hào)完成。 數(shù)據(jù)總線寬度采用8+2的方式。和16位或者32位寬度的數(shù)據(jù)總線連接時(shí),可以一次讀取接收數(shù)據(jù)的數(shù)據(jù)和地址指示位,減少總線操作次數(shù);若和8位系統(tǒng)連接,可以只連接低8位數(shù)據(jù)線,接收數(shù)據(jù)的地址信息可以通過內(nèi)部的狀態(tài)寄存器讀取。 1.6寄存器和控制邏輯 寄存器部分實(shí)現(xiàn)UART內(nèi)部所有數(shù)據(jù)的收發(fā)、控制和狀態(tài)寄存,用于設(shè)置UART的數(shù)

10、據(jù)格式、收發(fā)波特率、FIFO控制、本地地址、地址識(shí)別、中斷控制和狀態(tài)寄存,實(shí)現(xiàn)對UART工作的控制。 控制邏輯產(chǎn)生所需的所有波特率信號(hào)及對應(yīng)的上升和下降沿指示信號(hào),并根據(jù)實(shí)際工作所選擇的波特率輸出與系統(tǒng)時(shí)鐘同步的對應(yīng)信號(hào)。波特率產(chǎn)生邏輯的組成框圖如圖6所示。 2功能和時(shí)序仿真 首先結(jié)合功能仿真設(shè)計(jì)系統(tǒng)的仿真平臺(tái)。仿真平臺(tái)如圖7所示。系統(tǒng)仿真平臺(tái)和仿真激勵(lì)采用VerilogHDL語言設(shè)計(jì),可同時(shí)用于功能仿真和時(shí)序仿真,不能用于二者的綜合。寄存器級(jí)模型為用于UARTIP設(shè)計(jì)的RTL描述,全部采用可以綜合的VerilogHDL語句編寫。仿真使用的軟件為ModelSim。 功能仿真包括以下幾個(gè)

11、方面: (1)基本模塊連線時(shí)序的仿真。首先用描述方式設(shè)計(jì)UART的接口模型,利用仿真激勵(lì)進(jìn)行簡單的讀寫操作,設(shè)計(jì)出仿真激勵(lì)信號(hào)和系統(tǒng)仿真平臺(tái)。然后結(jié)合仿真激勵(lì)信號(hào)逐步完成UART的各個(gè)子模塊的設(shè)計(jì)。仿真時(shí),需要逐步觀察UART接口信號(hào)的波形、UART內(nèi)部模塊的接口信號(hào)波形、各種狀態(tài)機(jī)的狀態(tài)遷移和數(shù)據(jù)指針的值以及狀態(tài)位的值,逐步完成寄存器傳輸級(jí)的UART設(shè)計(jì)。 (2)UART的工作仿真。完成RTL的寄存器傳輸級(jí)模型后,根據(jù)系統(tǒng)軟件工作的模式,用HDL設(shè)計(jì)出數(shù)據(jù)收發(fā)的仿真激勵(lì),打開自環(huán)功能,進(jìn)行數(shù)據(jù)的發(fā)送和接收。仿真可以分為仿真查詢和中斷兩種工作方式。對于中斷工作方式,需要用HDL語言模擬軟件

12、的中斷機(jī)制, 進(jìn)行中斷工作方式的仿真。最后打開地址識(shí)別功能,發(fā)送不同目的地址的數(shù)據(jù),觀察UART的硬件地址識(shí)別情況。 完成功能仿真后,將設(shè)計(jì)進(jìn)行布局布線,生成Ver-ilogHDL形式的時(shí)序仿真模型和標(biāo)準(zhǔn)時(shí)延文件,利用與功能仿真相同的仿真平臺(tái)進(jìn)行時(shí)序仿真。時(shí)序仿真只需要仿真工作方式。功能仿真和時(shí)序仿真使用相同的仿真平臺(tái)和激勵(lì)向量,這樣便于比較二者的差異,發(fā)現(xiàn)設(shè)計(jì)代碼存在的問題。 3綜合和測試結(jié)果 本設(shè)計(jì)用Synplicity公司的SynplifyPro作為綜合工具,用XilinxISE5.2作為布局布線工具,采用器件為XC2S100IIE-7。綜合結(jié)果顯示,該UARTIP占用資源情況為

13、:SLICE275個(gè)、內(nèi)部塊RAM1個(gè)、I/O24個(gè),HOST總線可以達(dá)到的頻率為73.2MHz。 測試程序參考仿真激勵(lì)的生成,用C語言在vxWorks操作系統(tǒng)下設(shè)計(jì)。測試所用方法和工作仿真完全相同,只是仿真激勵(lì)對應(yīng)測試程序,而RTL模型對應(yīng)實(shí)際的FP-GA器件。 多點(diǎn)測試使用了五塊單板,采用半雙工總線方式,定義簡單的數(shù)據(jù)包格式,用于檢測數(shù)據(jù)錯(cuò)誤并返回?cái)?shù)據(jù)。數(shù)據(jù)包的格式為地址開頭,后面是最大255Byte的數(shù)據(jù);數(shù)據(jù)部分包括發(fā)送方的地址、數(shù)據(jù)校驗(yàn)和及包的長度。另外,還定義簡單的驅(qū)動(dòng)程序格式,完成基本數(shù)據(jù)的收發(fā)和控制,然后在上層加載多點(diǎn)通信協(xié)議。其中的一塊加載主設(shè)備程序,其它單板加載從設(shè)備程

14、序。主設(shè)備周期性地向其它從設(shè)備發(fā)送測試數(shù)據(jù),并在規(guī)定的時(shí)間內(nèi)等待接收目標(biāo)單板的數(shù)據(jù)。從設(shè)備軟件只接收發(fā)給本單板的數(shù)據(jù),如果校驗(yàn)正確,將收到的數(shù)據(jù)發(fā)給主設(shè)備;如果有錯(cuò)誤,則不進(jìn)行任何操作。主設(shè)備若在規(guī)定時(shí)間內(nèi)無法接收從設(shè)備的數(shù)據(jù)或者接收數(shù)據(jù)錯(cuò)誤,則判斷通信異常,進(jìn)行下一個(gè)設(shè)備的測試。 測試時(shí),數(shù)據(jù)包長為240Byte,波特率為115200。常溫和高低溫環(huán)境下的測試結(jié)果表明,UARTIP工作穩(wěn)定可靠,達(dá)到了設(shè)計(jì)要求。 本UARTIP全部采用VerilogHDL設(shè)計(jì),可以在采用FPGA實(shí)現(xiàn)的通訊和控制系統(tǒng)中作為系統(tǒng)多點(diǎn)通訊控制器,也可以用于片上系統(tǒng)(SoC)的設(shè)計(jì)。用于多點(diǎn)通信時(shí),可以有效降低CPU的額外負(fù)擔(dān),提高CPU系統(tǒng)的利用率。由于采用語言描述,移植性強(qiáng),可以用于不同廠家、不同型號(hào)的FPGA芯片中,提高了系統(tǒng)的設(shè)計(jì)速度和效率。

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!