摘 要:提出通過硬件邏輯芯片和加載不同的硬件邏輯配置軟件,實現控制不同種類微處理器的相關功能管腳能夠靈活映射連接到同一外圍接口應用電路上。從而達到在不改變開發系統其他任何硬件結構的情況下實現微處理器型號的快速更換,解決了現存的對于不同微處理器需要設計不同開發實驗系統的問題。
關鍵詞:微處理器;硬件邏輯;開發系統;管腳映射
中圖分類號:TP386.1 文獻標識碼:B 文章編號:1004-373X(2008)02-068-03
A Design for Universal Research System of Microcontroller Based on CPLD
TANG Xuhui
(School of Electronics Communication Engineering,Shenzhen Polytechnic College,Shenzhen,518055,China)
Abstract:This Paper proposes a method which can map correlative function pins of different type microcontroller to same periphery interface applied circuit flexibly,by CPLD or FPGA and loading different configuration files.It can realize change different types of microprocessor quickly in the circumstances of no changing any hardware of the research system.It can solve the existent problem of different microprocessor needs corresponding research system.
Keywords:microprocessor;CPLD or FPGA;research system;pin mapping
1 引 言
在現代通信系統、電子產品設計應用中大都離不開功能強大的微處理器,在應用微處理器進行電子產品設計時,首先就需要選擇合適的微處理器型號。除考慮他的功能、價格等因素外,同時還要考慮他的設計難易程度。為了詳細了解一款微處理器的性能和設計應用技術,開發人員通常都需要事先對微處理器廠家或者第三方設計廠家提供的針對此微處理器芯片設計的開發系統進行前期的研究分析和評估。
然而,由于不同微處理器的對外接口、芯片管腳、外圍模塊和軟件設計方法等都各不相同,因此廠家針對不同的微處理器設計不同的開發實驗板,以至于開發人員在研究不同的微處理器時需要購買不同的開發實驗板或實驗系統。這對于廣大科研人員來說,無形中就加大他們的經濟投入。
雖然不同微處理器的應用技術存在差別,但在開發實驗板的實現原理上都大致相同,現有的開發實驗板的實現功能框圖可描述為如圖1所示。
可見,微處理器提供的各主要功能單元的應用在開發實驗板上都要提供相關的模塊,以供設計者參考設計。但是不同的微處理器的對外管腳和封裝不同,當微處理器型號更換時,整個單板的硬件需要重新設計,盡管開發板中其他接口電路可能是完全相同。這造成了重復設計和人力物力資源的浪費。
2一種新型的可支持多種微處理器的通用開發實驗系統
針對上述情況,提出一種新型設計思路實現支持多種微處理器芯片的通用開發實驗系統。本開發系統的實現技術方案框圖如圖2所示。
本開發系統主要包括微處理器插座(含插座轉換器)、控制轉換模塊、控制邏輯加載單元、微處理器電源選擇模塊、微處理器時鐘選擇模塊、微處理器擴展口、微處理器配置模塊、電源模塊、時鐘模塊、復位模塊、微處理器各功能模塊接口應用電路等功能模塊。下面逐一詳細說明。
2.1微處理器插座(含插座轉換器)
微處理器插座(含插座轉換器)主要用來放置不同的微處理器芯片。他主要圍繞一個標準的間距寬為600 mil的48PIN的雙列直插式插座來實現。在此插座的四周擴展有多個焊接過孔,用來連接主板和插座轉換器。當微處理器芯片是DIP封裝時,只需將其直接插入主板上的此48PIN雙列直插式插座;當微處理器芯片是PLCC封裝時,則芯片需要置于A型插座轉換器內再將插座轉換器插入微處理器插座上。A型插座轉換器主要包含一個PLCC插座和雙排插針,雙排插針直接可以插入微處理器插座上,主要用來完成PLCC封裝向DIP封裝轉換的功能。當微處理器芯片是SMT封裝(SOP,QFP,BGA等)時,則需要將微處理器芯片簡單焊接在B型插座轉換器上。B型插座轉換器主要包含一個小的PCB板和多排插針,微處理器芯片可以焊接在此PCB板上,多排插針則可以固定于此雙列直插式插座和他周圍擴展的用來連接主板和插座轉換器的焊接過孔上。經過這樣的處理,通過微處理器插座結合插座轉換器可以方便地實現在同一塊開發實驗板上快速靈活地更換不同的微處理器芯片。
2.2 控制轉換模塊
主要由硬件邏輯芯片CPLD或者FPGA來實現。用于實現靈活的微處理器信號管腳映射的功能。一方面,來自于微處理器的大部分管腳信號(除了電源信號、內部時鐘振蕩器信號或其他模擬信號之外)連接到此硬件邏輯芯片的部分I/O腳上;另一方面,支持微處理器的各種通用外圍接口應用電路的信號也連接到此硬件邏輯芯片的部分I/O腳上;通過對此硬件邏輯芯片加載運行不同的硬件邏輯軟件,同一通用外圍接口應用電路可以連接到不同種類微處理器的相關信號管腳上。比如,對于UART接口電路,都可以由MAX 3232實現。MAX 3232上的串口輸入/輸出信號管腳是固定的,但是不同微處理器的串口輸入/輸出信號管腳則可能不同(比如有的處理器RXD是10腳,TXD是11腳;而有的處理器的RXD是12腳,TXD是13腳),通過控制轉換模塊的管腳映射功能可以根據微處理器的型號分別將MAX 3232的輸入腳連接到微處理器的相應引腳(第10腳或第12腳)。于是不同種類微處理器的UART接口都可以連接到同一個UART接口應用電路上。實現相同的開發實驗板可靈活支持多個處理器的目的。
控制轉換模塊的另外一個功能是輸出控制信號,控制將輸入到微處理器電源選擇模塊和微處理器時鐘選擇模塊的不同種類微處理器的電源信號和時鐘信號輸出給相應的電源模塊和時鐘模塊,以保證微處理器的正常工作。
2.3 控制邏輯加載單元
主要完成將計算機后臺提供的不同硬件邏輯軟件加載到控制轉換模塊中的硬件邏輯芯片里。當控制轉換模塊采用CPLD實現時,控制邏輯加載單元實際上只包括一個邏輯加載頭。當控制轉換模塊采用FPGA實現時,由于FPGA內容的掉電易失性,因此此時控制邏輯加載單元除了包括一個邏輯加載頭外,還包括一個帶有FLASH的控制系統。此控制系統通過串口完成將后臺主機上的FPGA加載文件燒寫到控制系統的FLASH中。這樣,整個系統只需加載一次FPGA內容,下次上電后就無需再加載。
2.4 電源模塊及電源選擇模塊
電源模塊輸出的電源電壓包括5 V,3.3 V,2.5 V和1.8 V等。以保證微處理器及其各外圍模塊的正常工作。電源選擇模塊主要完成將電源信號分配到不同種類微處理器的電源引腳的功能。輸入的不同電源信號(5 V,3.3 V或其他電源信號)來自開發實驗主板統一的電源模塊。選擇控制信號則來自于控制轉換模塊輸出的電源控制信號。為減少單板面積,微處理器電源選擇模塊內部主要由模擬開關芯片(比如ADG731,MAX396等)實現。沒有將微處理器的電源信號管腳直接連接到控制轉換模塊的I/O腳的原因是邏輯芯片的I/O腳輸出電流和功率很小,不能滿足各處理器芯片實際工作的需要。為了節省成本,微處理器所需的不同電源信號可以采用線纜通過人工操作的方式接入。這樣帶來的問題是不能實現完全意義上的微處理器自動配置。
2.5 時鐘模塊及時鐘選擇模塊
時鐘模塊由一個有源晶振電路實現,其輸出的時鐘信號送入控制轉換模塊的邏輯芯片的時鐘輸入腳。而且時鐘信號通過分頻后不但可提供給微處理器的時鐘引腳,也可以提供給其他各外圍接口應用電路使用。
時鐘選擇模塊主要完成將外部時鐘振蕩信號分配到不同微處理器的內部時鐘振蕩器信號輸入腳的功能。選擇控制信號則來自于控制轉換模塊輸出的時鐘控制信號。由于時鐘振蕩信號非數字信號,所以不能通過控制轉換模塊的I/O腳來實現,內部也是主要由模擬開關芯片實現。
2.6 微處理器擴展口模塊
主要包括一些多排插針和一個單板連接器。多排插針主要方便于開發者,可采用電纜連接的方式將微處理器的一些控制信號或輸入/輸出信號連接到自己開發的產品單板上。單板連接器則方便于本開發實驗系統的功能升級。針對一些微處理器獨特的功能模塊,比如以太網接口電路和微處理器外存儲模塊電路(包括FLASH/ROM和RAM等)等;或者隨著技術不斷更新,隨新型微處理器出現的新型功能模塊;他們都可采用小板的方式通過此連接器方便地提供給本開發實驗系統。
這里需要特別提及的是:以太網接口應用電路和微處理器擴展的存儲系統等模塊與微處理器型號緊密相關。不同的微處理器提供這些模塊的控制接口的方式差別很大,是不能采用單板上的同一個模塊來與不同類型微處理器直接相連的方式。比如,有的微處理器提供的以太網功能包括MAC和PHY的功能,外部只需要提供變壓器電路和RJ45水晶頭就可以實現以太網通信的功能。但有的處理器提供的以太網處理功能只包括MAC芯片,外部還要提供PHY器件結合變壓器電路和RJ45水晶頭才能實現完整的以太網通信功能。而對于微處理器擴展的存儲系統,由于不同微處理器處理機制不同,有的是地址信號線和數據信號線公用,有的則不是;有的需要鎖存有的則不需要;因此對應的外部接口電路也完全不一樣。因此這些微處理器擴展的外部存儲接口電路(包括FLASH、ROM和RAM等)以單獨的小板的方式來提供。
另外,在此模塊上也提供微處理器的仿真接口。這里主要是指JTAG接口,不同微處理器的JTAG信號管腳是不一樣的,通過控制轉換模塊的管腳映射功能,他們都可以映射到同一個JTAG接口電路相關信號上。有的微處理器的仿真接口是直接通過串口實現。這樣就只需利用UART接口應用電路就可以實現。
2.7 微處理器配置模塊
主要包括撥碼開關和一些上下拉電阻。由于大部分微處理器都指定某些管腳作為模式選擇管腳,用來選擇微處理器的工作模式。因此通過此配置模塊提供的信號管腳高低電平配置功能,就可以方便地實現不同種類微處理器的相應不同工作模式的靈活配置。
2.8 復位模塊及外圍接口應用電路
由復位芯片提供復位信號給控制轉換模塊的邏輯芯片或者單板上的其他各接口應用電路。通過控制轉換模塊處理后的復位信號再送給微處理器的復位腳。
微處理器各外圍接口應用電路主要用來提供一些外圍器件電路用以驗證處理器提供的這些功能模塊,或者用于研究這些功能模塊所對應的軟硬件實現技術等。
另外一種可替代的實現方案,其是將已實現了微處理器插座管腳靈活映射功能的微處理器最小系統獨立出來,作為扣板或者小板來提供,通過連接器直接與開發系統主板連接或者安裝在主板上。開發實驗系統主板上主要提供微處理器的各功能模塊電路或者一些對外接口。因此,此方案實現的通用開發實驗系統主要包括:主板和最小系統扣板(或小板)。
3 主要創新點和現實意義
3.1 主要創新點
(1) 通過硬件邏輯芯片和后臺加載不同的硬件邏輯配置軟件,實現控制不同種類微處理器的相關功能管腳能夠靈活映射連接到同一外圍接口應用電路上;從而達到在不改變開發實驗系統其他任何硬件結構的情況下實現微處理器型號的快速更換,保證了本開發系統的通用性。
(2) 通過設計科學、合理的微處理器插座和插座轉換器實現多種不同封裝的微處理器芯片的靈活更換。
(3) 通過將實現了微處理器插座管腳靈活映射功能的微處理器最小系統獨立出來以小板或扣板的方式來提供給用戶,方便用戶產品的微處理器升級換代,同時也方便用戶進行微處理器的器件選型。
3.2 現實意義
由上述設計可知,對于不同微處理器,都可以采用本文所提供的開發實驗系統來進行研究開發。而無需在研究一款新的微處理器時,就買一套新的開發實驗板,給那些需要研究不同微處理器的軟硬件應用技術的企業和個人節省了巨大的成本開銷。由于不同的開發實驗板的熟悉使用也需要一個過程,若只采用本開發實驗系統,這一熟悉過程也就不需要了。從而大大節省了開發新產品的時間。
另外,若采用將微處理器最小系統作為扣板獨立出來單獨提供給用戶,不但可為用戶的開發應用方便地實現微處理器的升級換代。而且也為用戶提供軟件的開發成本、器件物料成本等多種因素進行全面的分析比較。
參 考 文 獻
[1]何立民.單片機應用系統設計系統配置與接口技術\\[M\\]. 北京:北京航空航天大學出版社,1999.
[2]胡漢才.單片機原理及其接口技術\\[M\\].北京:清華大學出版社,1996.
[3]盧毅,賴杰.VHDL與數字電路設計[M].北京:科學出版社,2001.
[4]曹漢房.數字電路與邏輯設計\\[M\\].武漢:華中科技大學出版社,2004.
[5]邵貝貝.單片機嵌入式應用的在線開發方法\\[M\\].北京:清華大學出版社,2004.
[6]Bill Lucas.Configuring the System and Peripheral Clocks in the MC9S08GB/GT\\[S\\].Freescale Semiconductor,2003.
[7]陳興文.基于KEIL 51的單片機開發系統設計\\[J\\]. 微計算機信息,2005(5):112,60.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。