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