基于FPGA的通用異步收發(fā)器設計
2.2 發(fā)送模塊
2.2.1 發(fā)送模塊及其功能
發(fā)送模塊主要實(shí)現對并行數據的緩存、并串轉換,并把串行數據按照既定數據幀格式進(jìn)行輸出。發(fā)送模塊的引腳如圖2所示,各引腳功能見(jiàn)表1。本文引用地址:http://dyxdggzs.com/article/191039.htm
由CPU送來(lái)的待發(fā)送的并行數據,首先寫(xiě)入發(fā)送緩沖器TBR[7..0]。發(fā)送緩沖區中有數據待發(fā)送時(shí),數據自動(dòng)裝入移位寄存器TSR[7..0]并自動(dòng)完成串行數據的發(fā)送。首先傳送一位起始位0,然后根據幀結構中定義的數據長(cháng)度,分別串行移出TSR[7..0]中的數據,數據的低位在前,高位在后。當沒(méi)有數據發(fā)送的時(shí)候,SDO管腳保持高電平。
2.2.2 發(fā)送模塊功能仿真
發(fā)送器功能仿真結果如圖3所示。二進(jìn)制數11110000從引腳DIN[7..0]并行輸入,當WRN為0時(shí),啟動(dòng)發(fā)送程序,計數器開(kāi)始計數,使發(fā)送器將并行數據鎖存到發(fā)送緩沖器TBR[7..0],并通過(guò)發(fā)送移位寄存器TSR[7..0]逐位移位發(fā)送串行數據至串行數據輸出端SDO。在數據發(fā)送過(guò)程中用輸出信號TBRE,TSRE作為標志信號。當一幀數據由發(fā)送緩沖器TBR[7..0]送到發(fā)送移位寄存器TSR[7..0]時(shí),TBRE信號為1。由發(fā)送數據緩沖器傳給發(fā)送移位寄存器主要由信號TSRE控制。當TSRE為1時(shí),表示發(fā)送移位寄存器TSR[7..0]串行發(fā)送完畢;為0時(shí)表示還沒(méi)有發(fā)送完一幀數據。由仿真結果驗證了發(fā)送模塊的正確性。
評論