廣州致遠電子股份有限公司
嵌入式系統(tǒng)的多核時代已經(jīng)來臨,您準備好了嗎?近年來,電子技術(shù)、半導(dǎo)體技術(shù)取得了突飛猛進的發(fā)展,多核架構(gòu)已經(jīng)逐漸從高端服務(wù)器走向個人PC,并且在嵌入式領(lǐng)域嶄露頭角。
面對日益復(fù)雜的嵌入式系統(tǒng),單個ARM器件往往不能滿足實際的要求,系統(tǒng)可能需要多個ARM器件的協(xié)調(diào)配合才能完成用戶設(shè)定的任務(wù)。多個ARM器件的調(diào)試就需要將硬件連接成菊花鏈的形式,這樣只需要一個JTAG接口就能夠?qū)栈ㄦ溕系娜我釧RM器件進行仿真調(diào)試。傳統(tǒng)的仿真器僅僅能支持一次調(diào)試其中一個器件,無法同時控制另一個器件的運行!
TKScope率先支持菊花鏈結(jié)構(gòu)的多內(nèi)核系統(tǒng)仿真,支持菊花鏈上的多個器件同時調(diào)試,用戶可以同時將多個IDE連接到一臺仿真器分別調(diào)試各個內(nèi)核器件。
多個器件的硬件連接成菊花鏈結(jié)構(gòu),連接JTAG接口TDO的器件為菊花鏈上的第一個器件,連接JTAG接口TDI的器件為菊花鏈上的最后一個器件。前一個器件的TDI和后一個器件的TDO連接在一起,菊花鏈上所有的ARM器件的TMS、TCK信號連接在一起。
例如,系統(tǒng)中菊花鏈上存在兩個ARM器件,一個是雙核器件LPC4300,一個是ARM7TDMI內(nèi)核器件LPC2138。菊花鏈硬件連接示意圖如圖1所示。
圖1 菊花鏈硬件連接
TKScope支持菊花鏈結(jié)構(gòu)的多內(nèi)核系統(tǒng)的調(diào)試,例如,一臺TKScope仿真器可以同時調(diào)試LPC4300器件內(nèi)部的Cortex-M4和Cortex-M0內(nèi)核,以及LPC2138器件內(nèi)部的ARM7TDMI內(nèi)核。而且,在一臺PC機上可以同時打開各個內(nèi)核的工程文件進行同步調(diào)試,例如,可以打開3個IDE環(huán)境,同時連接到同一臺仿真器上進行同步調(diào)試。這是傳統(tǒng)的仿真器不可比擬的特性。
TKScope仿真菊花鏈結(jié)構(gòu)的多核系統(tǒng),設(shè)置方法與單核調(diào)試時基本相同,只是[主要設(shè)置]選項中的[時鐘]設(shè)置需要特別注意。此時,[時鐘模式]只能選擇[固定時鐘],JTAG時鐘值根據(jù)實際調(diào)試芯片的特性設(shè)置。JTAG時鐘值需要考慮到菊花鏈上的所有器件特性,不能大于任何一顆ARM器件運行的JTAG時鐘值。而且所有的ARM器件的JTAG時鐘值最好設(shè)置一致。
例如,ARM7TDMI內(nèi)核器件,JTAG最大時鐘值為1MHz;Cortex-M4和 Cortex-M0內(nèi)核器件,JTAG最大時鐘值為4MHz。綜合考慮,JTAG時鐘值設(shè)置不能高于1 MHz,圖2所示為[主要設(shè)置]界面,JTAG時鐘值設(shè)置為0.5MHz。
圖2 主要設(shè)置界面
TKScope仿真ARM內(nèi)核支持多種主流IDE環(huán)境,如TKStudio、Keil、IAR、Eclipse、RVDS、ADS等等。多核系統(tǒng)同時調(diào)試時,可以選擇相同的IDE環(huán)境,也可以選擇不同的IDE環(huán)境。例如,本文示例的兩個器件同時調(diào)試,3種內(nèi)核對應(yīng)3個工程文件,可以全部選擇在Keil環(huán)境下;也可以分別在不同的IDE環(huán)境下,例如Cortex-M4內(nèi)核在Keil環(huán)境下,Cortex-M0內(nèi)核在TKStudio環(huán)境下,ARM7TDMI內(nèi)核在Keil環(huán)境下。
(1)在Keil中調(diào)試Cortex- M4內(nèi)核
在Keil環(huán)境下打開Cortex-M4內(nèi)核的工程,TKScope仿真器正確設(shè)置。然后,打開仿真器的[TAP設(shè)置]界面,如圖3所示,選擇Cortex-M4后,[確認]退出。之后即可進行正常的調(diào)試。
圖3 Keil下調(diào)試Cortex- M4內(nèi)核設(shè)置
(2)在TKStudio中調(diào)試Cortex-M0內(nèi)核
在TKStudio環(huán)境下打開Cortex-M0內(nèi)核的工程,TKScope仿真器正確設(shè)置。然后,打開仿真器的[TAP設(shè)置]界面,如圖4所示,選擇Cortex-M0后,[確認]退出。之后即可進行正常的調(diào)試。注意,如果此時已經(jīng)在Keil中調(diào)試Cortex-M4內(nèi)核,無需退出調(diào)試!因為TKScope仿真器支持多個IDE同時連接,這與傳統(tǒng)仿真器在多核調(diào)試上有很大的區(qū)別。
(3)在Keil中調(diào)試ARM7TDMI內(nèi)核
在Keil環(huán)境下打開ARM7TDMI內(nèi)核的工程,TKScope仿真器正確設(shè)置。然后,打開仿真器的[TAP設(shè)置]界面,如圖5所示,選擇ARM7TDMI后,[確認]退出。之后即可進行正常的調(diào)試。同樣,如果系統(tǒng)中的其他內(nèi)核已經(jīng)處于調(diào)試狀態(tài),那么內(nèi)核會出現(xiàn)占用標志。
圖4 TKStudio下調(diào)試Cortex- M0內(nèi)核設(shè)置
圖5 Keil下調(diào)試ARM7TDMI內(nèi)核設(shè)置
(4)TKStudio、Keil聯(lián)調(diào)多核效果
當完成上述設(shè)置后,便可分別在TKStudio、Keil環(huán)境中切換至Debug模式,TKScope將分別完成Cortex-M4、Cortex-M0、ARM7TDMI內(nèi)核的初始化配置、程序下載。在進入Debug模式后,可以任意地在任何一個IDE環(huán)境中設(shè)置斷點、單步、全速運行。此時您完全掌握了調(diào)試狀態(tài)下 Cortex-M4、Cotex-M0、ARM7TDMI內(nèi)核的運行控制權(quán),為程序問題的查找?guī)砹藰O大的便利。
作為專業(yè)的仿真器品牌,TKScope不僅及時地支持新內(nèi)核、新芯片種類,而且也一如既往的關(guān)注用戶需求,為多核調(diào)試提供著全面的支持。TKScope仿真器后續(xù)會不斷地創(chuàng)新和發(fā)展,保持與嵌入式處理器同步發(fā)展和進步。
單片機與嵌入式系統(tǒng)應(yīng)用2012年11期