<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 基于Wishbone總線的UART IP核設(shè)計(jì)

          基于Wishbone總線的UART IP核設(shè)計(jì)

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

          采用接收狀態(tài)機(jī)控制整個(gè)模塊的接收過(guò)程。接收狀態(tài)機(jī)可分為5個(gè)狀態(tài),即IDLE、RX_START、RX_DATA、CHECK、RX_STOP,它們之間的狀態(tài)轉(zhuǎn)移,如圖3所示。

          本文引用地址:http://www.ex-cimer.com/article/156564.htm

          c.jpg


          IDLE狀態(tài):當(dāng)產(chǎn)生復(fù)位信號(hào)或運(yùn)行至停止?fàn)顟B(tài)之后,接收狀態(tài)機(jī)將復(fù)位到這種狀態(tài)。處于IDLE狀態(tài)時(shí),它等待外部傳來(lái)的信號(hào)從高向低轉(zhuǎn)變,此時(shí)視為產(chǎn)生了一個(gè)有效的起始位。一旦有效起始位被檢測(cè)到,有限狀態(tài)機(jī)就會(huì)切換到下個(gè)狀態(tài)。
          RX_DATA狀態(tài):當(dāng)狀態(tài)機(jī)跳轉(zhuǎn)到此狀態(tài)時(shí),采樣每得到一位數(shù)據(jù),就把接收到數(shù)據(jù)放到準(zhǔn)備好的接收移位寄存器中。在中需要一個(gè)接收計(jì)數(shù)器來(lái)進(jìn)行計(jì)數(shù)。當(dāng)計(jì)數(shù)器提示數(shù)據(jù)接收已完成,則狀態(tài)機(jī)會(huì)轉(zhuǎn)入下個(gè)狀態(tài)。
          CHECK狀態(tài):當(dāng)處于CHECK狀態(tài)時(shí),通過(guò)對(duì)實(shí)際接收到的數(shù)據(jù)進(jìn)行判斷得出實(shí)際數(shù)據(jù)的奇偶性,然后再與發(fā)送過(guò)來(lái)的數(shù)據(jù)的奇偶校驗(yàn)位進(jìn)行奇偶校驗(yàn)。
          如果符合,那么表示接收數(shù)據(jù)有效,可以傳入處理器;如不符,則不傳,直接丟棄數(shù)據(jù)。
          RX_STOP狀態(tài):無(wú)論停止位長(zhǎng)度設(shè)定為1位或者是2位,有限狀態(tài)機(jī)總是等待1位樣本的采樣時(shí)間,然后抽樣停止位。只要一個(gè)邏輯采樣停止位被檢測(cè)到,數(shù)據(jù)接收模塊就不會(huì)去檢查是否停止位的配置出現(xiàn)錯(cuò)誤。此時(shí),有限狀態(tài)機(jī)將返回IDLE狀態(tài)。
          2.3 數(shù)據(jù)發(fā)送模塊
          發(fā)送模塊將從處理器接收到的數(shù)據(jù),加上起始位,奇偶檢驗(yàn)位和停止位組成規(guī)定的格式后串行輸出。首先,利用緩存器FIFO存放需要發(fā)送的數(shù)據(jù),這樣處理器可以一次往FIFO中寫入多個(gè)字節(jié)的數(shù)據(jù)。發(fā)送數(shù)據(jù)時(shí)依次從FIFO中每次取出1Byte進(jìn)行串行輸出。
          設(shè)計(jì)采用發(fā)送狀態(tài)機(jī)來(lái)控制整個(gè)模塊的發(fā)送過(guò)程。發(fā)送狀態(tài)機(jī)由以下5個(gè)狀態(tài)組成:IDLE、TX_START、TX_DATA、CHECK、TX_STOP,它們的轉(zhuǎn)移關(guān)系如圖4所示。

          d.jpg


          IDLE狀態(tài):在沒有接收到將要發(fā)送的數(shù)據(jù)時(shí),發(fā)送模塊一直處于該狀態(tài),此刻一直保持發(fā)送模塊的數(shù)據(jù)位為高,當(dāng)?shù)玫街鳈C(jī)發(fā)出的工作信號(hào)時(shí),發(fā)生狀態(tài)跳轉(zhuǎn),進(jìn)入下個(gè)狀態(tài)。
          TX_START狀態(tài):發(fā)送模塊會(huì)先發(fā)送一個(gè)數(shù)據(jù)“0”,作為起始位。起始位傳送完畢后,轉(zhuǎn)入下個(gè)狀態(tài)。
          TX_DATA狀態(tài):發(fā)送完起始位后,接著發(fā)送由主機(jī)傳來(lái)的有效數(shù)據(jù)。首先把數(shù)據(jù)存入模塊內(nèi)的移位寄存器中,利用移位寄存器實(shí)現(xiàn)并行輸入到串行輸出的轉(zhuǎn)換。同時(shí)計(jì)數(shù)器開始計(jì)數(shù),在發(fā)送完8位數(shù)據(jù)后,計(jì)數(shù)器清零,F(xiàn)SM隨即跳入下個(gè)狀態(tài)。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();