基于SOPC技術(shù)的異步串行通信IP核的設計與實(shí)現
3 UART IP核設計
3.1 PLB Slave Single模塊介紹
如上,UABT IP核作為PLB總線(xiàn)的從設備,必須提供PLB總線(xiàn)接口。但由于PLB總線(xiàn)協(xié)議復雜,實(shí)現其接口難度較大,Xilinx公司為了使用戶(hù)編寫(xiě)的邏輯能夠方便的連結到PLB總線(xiàn)上,提供了一種PLB總線(xiàn)與用戶(hù)邏輯之間的接口模塊(IPIF,IP Interface),利用它簡(jiǎn)化了PLB總線(xiàn)接口信號、總線(xiàn)協(xié)議和其他接口相關(guān)問(wèn)題。IPIF接口邏輯中最簡(jiǎn)單的模塊稱(chēng)為PLB Slave Single模塊,它提供了一種輕量級的PLB總線(xiàn)接口,為PLB總線(xiàn)主設備提供了解析從設備地址空間,讀寫(xiě)從設備寄存器/存儲空間等基本服務(wù)。本文設計的UARTIP核與MicroBlaze處理器之間僅通過(guò)寄存器的讀寫(xiě)進(jìn)行交互,PLB Slave Single模塊很好的滿(mǎn)足了該設計要求,因此采用PLB Slave Single模塊與UART邏輯共同構成了UART IP核。PLB Slave Single模塊與UART邏輯之間的連接關(guān)系如圖3所示,接口信號說(shuō)明如表1所示。本文引用地址:http://dyxdggzs.com/article/154802.htm
在系統中,UART IP核的內部寄存器組映射為處理器的某段地址空間,MicroBlaze處理器通過(guò)對該段地址的讀寫(xiě)實(shí)現對UART IP核的訪(fǎng)問(wèn)。當MicroBlaze處理器訪(fǎng)問(wèn)UART IP核的某個(gè)寄存器時(shí),PLB總線(xiàn)會(huì )產(chǎn)生相應的地址信號和讀寫(xiě)信號,該信號被UART IP核中的PLB Slave Single模塊解析并生成相應的IPIF信號,UART IP核中的UABT邏輯響應該IPIF信號,完成寄存器的讀寫(xiě)。
3.2 UART IP核寄存器組設計
文中設計的UART IP核提供了5個(gè)寄存器,如表2所示。其中發(fā)送寄存器和讀接收寄存器完成UART數據的發(fā)送和接收。狀態(tài)寄存器提供了UART IP核內部狀態(tài),包括接收數據有效,發(fā)送FIFO滿(mǎn),接收FIFO滿(mǎn),奇偶校驗錯等狀態(tài)??刂萍拇嫫魈峁┝薝ART IP核復位功能。配置寄存器提供了波特率設置,奇偶校驗位設置等功能。
3. 3 UART協(xié)議邏輯模塊設計
本文設計的UART協(xié)議邏輯模塊主要包括波特率產(chǎn)生模塊,發(fā)送模塊,接收模塊,寄存器組等幾個(gè)部分,其結構如圖4所示。寄存器組說(shuō)明如表2,其他幾個(gè)模塊的設計如圖4所示。
評論