基于Wishbone總線的UART IP核設計
CHECK狀態:當狀態機處于這個狀態,最后1位數據仍然在傳輸。傳輸完成時,狀態機將判斷校驗位。如果校驗位無誤,則進入下個狀態。
TX_STOP狀態:在此狀態下,根據發送模塊的采樣結果,將設置相關中斷和狀態位。發送完畢后,狀態機返回IDLE狀態。
3 UART IP核的驗證方法
對UART IP核的驗證主要是在Modelsim軟件構建的虛擬平臺中進行的,通過編寫Testbench(測試代碼)作為激勵信號,將得到的值與期望值進行比較,從而判斷功能是否正確。驗證系統框圖,如圖5所示。本文引用地址:http://www.104case.com/article/156564.htm
本次驗證施加的測試激勵包括兩個部分,一部分是模擬發送數據的過程,如總線對于模塊內部寄存器的讀信號,UART串口輸出信號和設備的硬件接口信號等,驗證模塊的正常功能是否實現;另一部分是模擬接收數據的過程,如外部設備對UART發送的數據接收過程,以及UART 將數據轉換發送給微機系統。仿真波形圖,如圖6所示。
仿真波形圖模擬的是UART在全雙工的模式下同時接收一個完整的數據(51,16進制)和發送一個完整的數據(11,16進制)的過程。以接收過程為例:UART首先輸出發送UART_INT中斷信號,通知處理器準備接收數據,處理器響應中斷。UART通過采樣脈沖(Baud)將信號寫入RX_UDR接收寄存器中,同時接收計數器計數,計數到8時自動清零,中斷信號自動清除,隨后將接收到的8位數據通過總線模塊傳入處理器中。發送過程為接收的逆過程。
4 結束語
IP核重用技術以及接口標準化問題是IC設計領域中的研究熱點,其應用領域正在不斷拓展。本文介紹的基于Wishbone總線的UART IP核的設計方法,通過驗證表明了各項功能達到預期要求,為IP核接口的標準化設計提供了依據。此外,該IP核代碼全部采用模塊化的Verilog-HDL語言編寫,便于以后不斷完善,具有較強的實際效益。
評論