色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > 基于Verilog HDL的UART模塊設計與仿真

          基于Verilog HDL的UART模塊設計與仿真

          作者: 時間:2010-07-27 來源:網(wǎng)絡 收藏

          2.1 波特率發(fā)生器
          波特率表示的是每秒鐘傳送的二進制數(shù)據(jù)的位數(shù),即單位時間內(nèi)傳送的信息量。在串行異步傳送中,常用到的波特率為1 200、2 400、4 800、9 600、19 200等。波特率發(fā)生器實際上是一個分頻器,主要是產(chǎn)生和。RS-232通信所采用的波特率同步的時鐘。由于串行數(shù)據(jù)幀與接收數(shù)據(jù)時鐘是異步的,所以存的接收端在什么時刻將數(shù)據(jù)移入寄存器,怎樣選擇可靠的采樣點是非常關鍵的。一般采用高速時鐘對串行數(shù)據(jù)采樣是非常有效的方法。在實際設計中,一般最大選擇16倍于波特率的時鐘頻率。實現(xiàn)波特率時鐘的基本思路就是設計一個計數(shù)器,該計數(shù)器工作在速度很高的系統(tǒng)時鐘下,通過總線寫入不同的數(shù)值到波特率發(fā)生器保持寄存器中,然后用計數(shù)器的方式生成所需要的各種波特率就能得到所需的波特率時鐘,仿真如圖3所示。

          本文引用地址:http://cafeforensic.com/article/191639.htm


          2.2 接收模塊
          接收模塊是整個的設計的重點,其主要功能是檢測數(shù)據(jù)的起始位,并對接收的數(shù)據(jù)進行串并轉換,并將接收好的數(shù)據(jù)儲存等待微機處理。由于串行數(shù)據(jù)幀與接收數(shù)據(jù)時鐘是異步的,接收功能實現(xiàn)的關鍵是接收器與每個接收字符同步。要保證異步通信的雙方準確無誤地交換信息,必須有效控制采集通信線路上的電平信號的時機。由異步串行通信的特點可知,接收同步是通過低電平起始位實現(xiàn)的。而為了保證采樣的正確性,采樣在數(shù)據(jù)位的中間進行,并且接收單元采樣數(shù)據(jù)的頻率與發(fā)送單元發(fā)送數(shù)據(jù)的頻率相同,是波特率時鐘周期的16倍,這樣可以有效地降低由于時鐘不匹配而導致的誤采樣。接收模塊的設計主要由狀態(tài)機實現(xiàn)其核心功能,采用獨熱編碼方式,雖然獨熱編碼多用了兩個觸發(fā)器,但所用組合電路可節(jié)省一些,使電路的速度和可靠性有顯著提高。控制接收器的起始/停止位檢測,接收數(shù)據(jù)的計數(shù),移位寄存的功能。狀態(tài)機分為5個狀態(tài),分別為:IDEL,CENTER,WAIT,SAMPLE,STOP。狀態(tài)轉換圖如圖4所示。


          1)IDLE狀態(tài) 系統(tǒng)被復位后,接收狀態(tài)機進入IDLE狀態(tài),等待起始位到來,輸入數(shù)據(jù)在空閑時保持為1,當輸入由“l(fā)”跳變?yōu)椤?”時,狀態(tài)機跳轉到CENTER狀態(tài)。
          2)CENTER狀態(tài) 啟動起始位檢測電路,為排除噪聲干擾,狀態(tài)機等待8個脈沖,如果數(shù)據(jù)線上仍為低電平,則狀態(tài)機跳轉到WAIT狀態(tài),并啟動采樣電路。如果是噪聲干擾,則轉入IDLE態(tài)。
          3)WAIT狀態(tài) 狀態(tài)機WAIT狀態(tài),判斷數(shù)據(jù)接收是否完畢,若未完成采樣,則轉入SAMPLE狀態(tài)進行數(shù)據(jù)位的采樣檢測,同時啟動位計數(shù)器,用來控制數(shù)據(jù)接收的位數(shù)。無論停止位是幾位,狀態(tài)機只對停止位作一次采樣。接收完畢,轉入STOP狀態(tài)。
          4)SAMPLE狀態(tài) 在此狀態(tài)對串口輸入數(shù)據(jù)進行采樣,每次采樣均位于數(shù)據(jù)位的中心。并每接收完一位數(shù)據(jù),狀態(tài)機轉入WAIT狀態(tài)。



          評論


          相關推薦

          技術專區(qū)

          關閉