楊 瀾,戚秀真
(長安大學 信息工程學院,陜西 西安 710064)
UART微控制器設計方法及其FPGA實現
楊瀾,戚秀真
(長安大學 信息工程學院,陜西 西安 710064)
摘要為滿足FPGA與PC之間的通信需求,提出了一種FPGA的通用異步收發器設計實現方法。在Xilinx ISE 11開發平臺上采用Verilog HDL硬件描述語言及其自帶的IP CORE,實現了UART精確波特率時鐘模塊、UART發送模塊和UART接收模塊。并在ISE環境下進行綜合建模仿真,給出各模塊的仿真時序圖以及綜合生成的RTL圖。實驗通過Xilinx公司的XC2VP30 FPGA開發板對程序進行下載運行調試,與PC進行實時通信,結果表明,UART控制器工作穩定可靠,較好地實現了數據串行通信,達到預期設計要求。
關鍵詞UART;FPGA;Verilog HDL
通用異步收發器 (Universal Asynchronous Receiver Transmitter,UART)是一種通用串行異步通信數據總線,由于其可靠性高、傳輸距離遠、相對成本較低等優點被廣泛應用,尤其是在嵌入式微處理器設計中,UART接口已成為不可缺少的一部分[1-3]。其工作原理是UART發送器將接收到的并行數據幀轉換成串行數據幀進行傳輸。如表1所示,串行數據幀包括1個低位1,7~8個數據位,1個可選的奇偶校驗位和1個或多個高位停止位[4-5]。UART接收器發現低位起始位后與發送器時鐘同步,然后接收整個串行數據幀,最后去掉低位起始位和高位停止位進行相應的奇偶校驗生成并行數據幀[6]。目前,FPGA(Field Programmable Gate Array)芯片以其集成度、設計周期短、性價比高可滿足時序復雜的大規模設計等諸多優點,被廣泛應用于工程中[7-10]。由于大部分FPGA芯片內部并沒有集成UART通信功能模塊,給FPGA與CPU或其他設備間的數據傳輸造成不便[11-12]?!?br>