機械社區(qū)
標(biāo)題: MCU硬件設(shè)計淺析 [打印本頁]
作者: tainqing 時間: 2017-10-16 15:58
標(biāo)題: MCU硬件設(shè)計淺析
(1) 總線方案設(shè)計
采用何種總線、何種組合方式、總線的數(shù)量等關(guān)系到MCU性能的發(fā)揮。以AMBA總線為例,通常的用法是AHB接高速外設(shè),再通過AHB到APB總線橋來訪問低速外設(shè)。有時為了提高外設(shè)的訪問速度,一個MCU內(nèi)部可能有兩條APB總線;也可能有兩條AHB總線。指令和數(shù)據(jù)分離,一條用來數(shù)據(jù)傳輸或圖像處理,另一條用來通用控制。還可能有多層AHB的互連矩陣,便于多個Master可以同時訪問多個不同的高速外設(shè),從而大幅度提高MCU系統(tǒng)性能。因此,總線方案的制定須依據(jù)產(chǎn)品的具體應(yīng)用來確定信盈達(dá)嵌入式物聯(lián)網(wǎng)智能硬件企鵝要妖氣嗚嗚吧久零就要。
(2) 功耗管理方案設(shè)計
低功耗是MCU的突出特點之一,因為MCU中集成了多種低功耗管理策略:不僅在邏輯上采用門控時鐘、門級優(yōu)化的方式,而且還在物理上采用多閾值電壓、多電源域、門控電源等方式;同時更在功能模式上采用了多種模式:正常運行模式、睡眠模式、深度睡眠模式、掉電模式等,并嚴(yán)格規(guī)定各種模式下運行和關(guān)閉IP核的種類以及各種模式之間的進入和退出流程。這既保證了電路的功能,又保證了電路的性能。
(3) 中斷處理方案設(shè)計
中斷是MCU一項很重要的功能。通過中斷控制,CPU可以快速響應(yīng)外設(shè)的請求。中斷處理一般包括中斷源的數(shù)量、優(yōu)先級、是否可屏蔽、是一般中斷還是快速中斷等,通常需要設(shè)計一個專用模塊來進行中斷處理。有時為了提高設(shè)計效率,IP銷售商也提供標(biāo)準(zhǔn)的基于AHB或APB等總線接口協(xié)議的IP核。如果此類IP核能夠滿足系統(tǒng)對于中斷處理情況的要求,也可以選用。
(4) 存儲器管理方案設(shè)計
存儲器是MCU中占面積較大的模塊。一個MCU中可能同時含有ROM、SRAM和FLASH三種存儲器:ROM用于放置Boot Loader、IP Drivers等,SRAM用于提高軟件運行速度、存放臨時數(shù)據(jù),F(xiàn)LASH用于存放應(yīng)用程序和數(shù)據(jù)。由于FLASH的讀寫速度比較慢,為了提高FLASH的讀寫速度,可以采用預(yù)取緩沖器和寫緩沖器來加速指令和數(shù)據(jù)的緩沖。由于各個存儲器都有自己的地址空間,因此很方便用戶訪問。為了便于系統(tǒng)管理,通常設(shè)計一個存儲器管理模塊,并在系統(tǒng)控制模塊中設(shè)計對應(yīng)的控制寄存器。
(5) 在線調(diào)試方案設(shè)計
目前,比較常用的在線調(diào)試方式為串行調(diào)試,如JTAG、EJTAG、UART等,使用PC機的并口、串口、網(wǎng)口或是USB接口,使得在線調(diào)試簡單方便,成本低廉,如圖2所示。由于被調(diào)試的程序要在目標(biāo)板上運行,而且MCU必須正常工作,因此需要設(shè)計一個專用的調(diào)試模塊以保證上位機軟件可以調(diào)用CPU來進行軟硬件的在線調(diào)試,并且符合IEEE1149.1的協(xié)議標(biāo)準(zhǔn),此模塊的基本結(jié)構(gòu)如圖3所示。
file:///C:\Users\郭曉娟\AppData\Local\Temp\ksohtml\wps74FD.tmp.png
2 w. ]; |: e& a' r8 m, P圖2典型在線調(diào)試系統(tǒng)示意圖
file:///C:\Users\郭曉娟\AppData\Local\Temp\ksohtml\wps74FE.tmp.png
$ n2 M. \2 ^1 ~1 Y% a' U" D x- t圖3調(diào)試結(jié)構(gòu)示意圖
(6) 測試方案設(shè)計
MCU的測試方案主要包括物理測試、功能測試和性能測試幾部分內(nèi)容。先要根據(jù)時鐘方案和復(fù)位方案對MCU進行時鐘測試,確保時鐘電路工作正常;再對CPU進行功能測試,因為CPU是MCU的控制核心,只有CPU正確運行才能對其他IP核進行測試;然后再依據(jù)設(shè)計規(guī)格書對MCU外圍的數(shù)字IP核和模擬IP核進行功能測試和性能測試。
5.2系統(tǒng)級驗證
為了確保設(shè)計的正確性,流片之前必須對MCU進行全功能驗證。因此需要使用多種IIP和VIP來搭建一個系統(tǒng)級驗證平臺,依據(jù)設(shè)計規(guī)格書制定詳細(xì)的驗證方案,通過仿真工具,采用定向和隨機的方式或采用比較流行的OVM、VMM和UVM等驗證方法學(xué)、逐個IP核來驗證MCU的全部功能是正確的,重點是系統(tǒng)控制單元、總線仲裁器、功耗管理等為系統(tǒng)功能定制設(shè)計的非標(biāo)準(zhǔn)模塊。
5.3 FPGA原型驗證
由于系統(tǒng)級驗證使用的是EDA工具進行軟件仿真,仿真的速度比較慢,因此可以通過FPGA原型驗證的方式來加速系統(tǒng)級驗證的速度,尤其是需要將那些功能比較復(fù)雜、規(guī)模比較大的模塊下載到FPGA中,而且應(yīng)盡可能使用規(guī)模比較大的FPGA,如Virtex-7系列、ArriaV系列等。搭建FPGA驗證平臺時,不僅可以使用一塊FPGA,也可以使用多塊FPGA,最好能夠?qū)⒃O(shè)計的所有模塊全部下載到FPGA中。FPGA原型驗證不僅要驗證硬件的正確性,還要驗證IP核驅(qū)動程序的正確性,同時也可以驗證目標(biāo)應(yīng)用程序的正確性。
5.4物理設(shè)計
在對MCU系統(tǒng)級驗證和FPGA原型驗證后,需要進行物理設(shè)計:依據(jù)設(shè)計規(guī)格書制定合理設(shè)計約束,從邏輯綜合到自動布局布線,再到物理驗證、形式驗證、靜態(tài)時序分析和功能驗證,完成從RTL到GDSII的轉(zhuǎn)換過程,最后將數(shù)據(jù)發(fā)送至代工廠進行加工制造。
5.5文檔設(shè)計
文檔是MCU設(shè)計過程中很重要而且很必要的環(huán)節(jié),且應(yīng)該在設(shè)計的不同階段,以模板的形式規(guī)定在此階段所要完成的文檔設(shè)計,并由項目負(fù)責(zé)人進行詳細(xì)審查,從而確保一旦設(shè)計中出現(xiàn)了任何問題,都可以查找相關(guān)的設(shè)計文件以及對應(yīng)的設(shè)計文檔,尤其是設(shè)計的細(xì)節(jié)需要體現(xiàn)的很完整。
1、 結(jié)束語
以上只是簡要概述了MCU硬件設(shè)計的主要方面。若要設(shè)計一個性價比高、競爭力強的MCU,還需要進行大量的、詳細(xì)的工作,尤其是電路的全功能驗證和詳盡測試,并搭建一個MCU平臺來進行系列產(chǎn)品的開發(fā),以保證產(chǎn)品可以源源不斷地進入嵌入式市場。
" a/ u, y, ]6 A0 T3 h S. s
歡迎光臨 機械社區(qū) (http://e-learninguniversity.com/) |
Powered by Discuz! X3.4 |