verilog设计UART发送接收及各种错误仿真
生活随笔
收集整理的這篇文章主要介紹了
verilog设计UART发送接收及各种错误仿真
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
發(fā)送數(shù)據(jù),接收數(shù)據(jù)等。
錯(cuò)誤信號(hào) -
OverrunError - 發(fā)生在接收器已經(jīng)收到一個(gè)字符(!rxEmpty),并且在rxRead發(fā)生之前,下一個(gè)字符開始到達(dá)。
- UnderrunError - 發(fā)生在發(fā)送器在完成發(fā)送當(dāng)前字符(!txEmpty)之前收到一個(gè)新字符(txWrite)。
- FramingError - 發(fā)生在接收器沒有看到預(yù)期的 "停止 "位時(shí)。
幀錯(cuò)誤 - 發(fā)生在接收方?jīng)]有看到預(yù)期的 "停止 "位時(shí)。注意:中斷經(jīng)常導(dǎo)致成幀錯(cuò)誤的發(fā)生。 - BreakDetect - 當(dāng)接收方得到一個(gè) "空格 "輸入時(shí)發(fā)生,它是邏輯低電平,超過了成幀周期。這通常被用來(lái)標(biāo)明
一些協(xié)議中的多字節(jié)數(shù)據(jù)幀的結(jié)束,如數(shù)據(jù)包的開始。 - 這些錯(cuò)誤標(biāo)志應(yīng)該在接收機(jī)下一次讀取或下一個(gè)字節(jié)寫入時(shí)自動(dòng)清零。
讀取或?qū)懴逻m當(dāng)?shù)淖止?jié)時(shí),這些錯(cuò)誤標(biāo)志應(yīng)自動(dòng)清除。
UART頂層模塊:
`timescale 1ns / 1ps
module model_uart
#(parameter SYSTEM_CLOCK_MHZ = ,
parameter BAUD_RATE = 14400 )
(
input sysClk, nRst,
output baudClk,
// Transmitter interface
input [7:0] dataout,
input txWrite,
output txEmpty, txUnderrun,
output txD,
// Receiver interface
input rxD,
output [7:0] datain,
input r
總結(jié)
以上是生活随笔為你收集整理的verilog设计UART发送接收及各种错误仿真的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Myeclipse5.5获取注册码
- 下一篇: 哪些要素会让咱们呈现抑郁症的病症