99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ARM仿真調(diào)試技術(shù):軟件仿真和硬件仿真

如意 ? 來源:CSDN ? 作者:楊碩 ? 2020-06-20 09:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式系統(tǒng)的設(shè)計中,仿真應(yīng)用的范圍主要集中在對程序的仿真上。在ARM的開發(fā)過程中,一種最簡單和原始的開發(fā)流程是:編寫程序,然后燒寫到芯片上驗證功能,這種方法對于簡單的小系統(tǒng)是可以對付的,但在大系統(tǒng)中使用這種方法則是完全不可能的。所以很多時候我們需要在不燒寫代碼的情況下調(diào)試程序,這就是仿真調(diào)試技術(shù)。

現(xiàn)代調(diào)試技術(shù)可以分為軟件仿真調(diào)試和硬件仿真調(diào)試兩種:

一.軟件仿真(指令集仿真):

概念:

用數(shù)據(jù)結(jié)構(gòu)描述目標(biāo)機CPU中各個寄存器和其他資源(內(nèi)存等),通過軟件模擬,可以逐條指令解釋執(zhí)行目標(biāo)機可執(zhí)行映象中的程序。

應(yīng)用場合:

● 當(dāng)嵌入式軟件開發(fā)在目標(biāo)硬件平臺不存在的情況下進(jìn)行,就要使用這種軟件來模擬目標(biāo)CPU,以驗證代碼邏輯。

● 是學(xué)習(xí)嵌入式開發(fā)有效地工具,可以讓學(xué)習(xí)者從底層具體硬件細(xì)節(jié)中解脫出來,專注于軟件,尤其是與具體硬件無關(guān)的系統(tǒng)軟件(TCP/IP協(xié)議棧)。

幾個不錯的硬件模擬平臺:

● Skyeye:清華大學(xué)計算機系博士后陳渝發(fā)起,開源項目,主要模擬ARM內(nèi)核CPU。

● ARMulator:ARM公司推出,ARM指令集模擬器(ADS,Realview MDK上就用這個)。

● ZIX:一個快捷高效、功能強大、易于配置的嵌入式Linux開發(fā)環(huán)境。

軟件仿真的缺點:

無法完全仿真與硬件相關(guān)的部分,最終還要通過硬件仿真來完成最終的設(shè)計。

二.硬件仿真調(diào)試:

以前的芯片沒有JTAG調(diào)試邏輯,要向仿真它就必須要有專門的仿真器,這種仿真器成本較高,而且每種芯片都不一樣,現(xiàn)在這種仿真器已經(jīng)不存在了。

現(xiàn)在的芯片一般都內(nèi)置了JTAG調(diào)試邏輯,并不需要CPU仿真器,需要的只是一個JTAG協(xié)議轉(zhuǎn)接器(現(xiàn)在還稱其為仿真器,其實叫做調(diào)試器比較合適)。所以下面主要介紹JTAG及其仿真技術(shù)。

JTAG簡介

JTAG是Joint Test Action Group的簡稱,該組織致力于統(tǒng)一芯片的測試標(biāo)準(zhǔn),它們最初向IEEE提出了IEEE1149.1標(biāo)準(zhǔn),后來經(jīng)過IEEE批準(zhǔn)并且標(biāo)準(zhǔn)化,所以IEEE1149.1標(biāo)準(zhǔn)又叫JTAG標(biāo)準(zhǔn),它是一套芯片測試接口和標(biāo)準(zhǔn),現(xiàn)在幾乎所有的CPU核里面都會實現(xiàn)JTAG邏輯單元。JTAG原本是用來測試芯片設(shè)計是否正確,其基本原理就是在芯片的各個管腳上放置鎖存器,然后串聯(lián)起來構(gòu)成移位寄存器,可以監(jiān)控芯片管腳的輸入和輸出。后來大家發(fā)現(xiàn)用JTAG在線調(diào)試芯片非常方便(其實就是利用JTAG控制CPU內(nèi)核),還不需要設(shè)計專門的仿真芯片,因此就出現(xiàn)了用JTAG調(diào)試風(fēng)行的局面。

邊界掃描技術(shù)(Boundary-Scan):

JTAG調(diào)試主要就是基于這種邊界掃描技術(shù)。

邊界掃描技術(shù)的基本思想是在靠近芯片的輸入輸出管腳上增加一個移位寄存器單元。因為這些移位寄存器單元都分布在芯片的邊界上,所以被稱為邊界掃描寄存器 (Boundary-Scan Register Cell) 。當(dāng)芯片處于調(diào)試狀態(tài)的時候,這些邊界掃描寄存器可以將芯片和外圍的輸入輸出隔離開來。通過這些邊界掃描寄存器單元,可以實現(xiàn)對芯片輸入輸出信號的觀察和控制。

JTAG的主要作用:

● 檢測芯片是否良好

■這是JTAG最初設(shè)計的目標(biāo)

● 鏡像文件的燒寫功能

■可以燒寫編譯出來的二進(jìn)制或者十六進(jìn)制可執(zhí)行文件到目標(biāo)板的Flahs芯片上

■當(dāng)開發(fā)板為裸板(沒有固化任何程序)的時候,通常需要通過JTAG接口下載bootloader

■調(diào)試功能

■JTAG接口為宿主機和目標(biāo)系統(tǒng)之間的通信、控制提供了方便的途徑

ARM7TDMI調(diào)試架構(gòu):

一個調(diào)試系統(tǒng)通常包含三個部分:

● 調(diào)試主機

■是一臺運行調(diào)試軟件(ADS,Keil等)的計算機

■可以發(fā)出一些高層的調(diào)試命令,設(shè)置斷點,訪問內(nèi)存等

● 協(xié)議轉(zhuǎn)換器

■將調(diào)試主機發(fā)出的高層調(diào)試命令轉(zhuǎn)換為底層的ARM JTAG調(diào)試命令

■調(diào)試目標(biāo)

■基于目標(biāo)芯片的開發(fā)板

ARM7TDMI典型的調(diào)試架構(gòu)如下圖所示:

經(jīng)過協(xié)議轉(zhuǎn)換器進(jìn)行命令解釋,主機上運行的調(diào)試軟件就可以通過JTAG接口直接和目標(biāo)芯片對話了。

為了支持底層的調(diào)試,ARM7TDMI提供了硬件上的調(diào)試擴展,包括:

● 停止程序的運行

● 檢查和修改ARM7TDMI的內(nèi)核狀態(tài)

● 觀察和修改內(nèi)存

● 恢復(fù)程序的運行

常見ARM調(diào)試工具:

● BDI1000/2000/3000

■非常好的調(diào)試工具,可以調(diào)試ARM、MIPS、PowerPC、Xscale等多種架構(gòu)處理器

■JTAG下載速度可以上兆,以太網(wǎng)接口

■性能優(yōu)越但是價格不菲,可以調(diào)試Linux內(nèi)核這種復(fù)雜的代碼

● U-Link

■U-Link是Keil公司做的用于ARM和某些增強型8051單片機調(diào)試的工具

■由于Keil公司做的時候沒有加密,導(dǎo)致現(xiàn)在盜版滿天飛

■U-link僅僅支持Keil,JTAG下載速度20K~30K

U-Link下載程序不是簡單通過JTAG,而是先用JTAG下載一段固件程序到目標(biāo)板,然后再用這個固件程序和JTAG把用戶代碼寫入Flash以提高速度

● J-Link

■J-Link是IAR公司為ARM芯片開發(fā)的調(diào)試工具

■支持RDI協(xié)議的調(diào)試工具,如Keil、ADS、IAR等

■J-Link不支持ARM10以上的內(nèi)核

■JTAG下載速度400K~500K

● Multi-ICE

■ARM公司原創(chuàng)調(diào)試工具,支持全系列ARM芯片

■JTAG下載速度130K左右

● Wiggler電纜

■Wiggler是世界上最泛濫的一種調(diào)試工具

■結(jié)構(gòu)非常簡單:一片74HC244 + 一個9013 + 幾個電阻

■性能一般,但是價格非常便宜

■后人又在Wiggler的硬件基礎(chǔ)上開發(fā)了很多的調(diào)試工具,例如大名鼎鼎的H-Jtag

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9353

    瀏覽量

    377731
  • 仿真
    +關(guān)注

    關(guān)注

    52

    文章

    4289

    瀏覽量

    135901
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    詳解ADC電路的靜態(tài)仿真和動態(tài)仿真

    ADC電路主要存在靜態(tài)仿真和動態(tài)仿真兩類仿真,針對兩種不同的仿真,我們存在不同的輸入信號和不同的數(shù)據(jù)采樣,因此靜態(tài)仿真和動態(tài)
    的頭像 發(fā)表于 06-05 10:19 ?821次閱讀
    詳解ADC電路的靜態(tài)<b class='flag-5'>仿真</b>和動態(tài)<b class='flag-5'>仿真</b>

    Multisim模擬電路仿真教程

    設(shè)計開發(fā)人員的青睞。Multisim用軟件方法虛擬電子元器件及儀器儀表,將元器件和儀器集合為一體,是原理圖設(shè)計、電路測試的虛擬仿真軟件。 Multisim來源于加拿大圖像交互技術(shù)
    發(fā)表于 05-09 17:58 ?2次下載

    《聊一聊ZXDoc》之CAN總線仿真、面板仿真

    。什么是仿真?CAN總線仿真是一種通過虛擬化技術(shù)模擬CAN(FD)通信環(huán)境的方法,用于在無物理硬件或脫離實際系統(tǒng)的情況下,對ECU、傳感器、執(zhí)行器等節(jié)點的通信行為
    的頭像 發(fā)表于 05-09 11:30 ?532次閱讀
    《聊一聊ZXDoc》之CAN總線<b class='flag-5'>仿真</b>、面板<b class='flag-5'>仿真</b>

    電磁環(huán)境仿真與驗證系統(tǒng)軟件

    電磁環(huán)境仿真與驗證系統(tǒng)軟件
    的頭像 發(fā)表于 04-29 16:59 ?274次閱讀
    電磁環(huán)境<b class='flag-5'>仿真</b>與驗證系統(tǒng)<b class='flag-5'>軟件</b>

    大規(guī)模硬件仿真系統(tǒng)的編譯挑戰(zhàn)

    引言隨著集成電路設(shè)計復(fù)雜度的不斷提升,硬件仿真系統(tǒng)在現(xiàn)代芯片設(shè)計流程中扮演著越來越重要的角色?;贔PGA(現(xiàn)場可編程門陣列)的商用硬件仿真系統(tǒng)因其靈活性、全自動化、高性能和可重構(gòu)性,
    的頭像 發(fā)表于 03-31 16:11 ?874次閱讀
    大規(guī)模<b class='flag-5'>硬件</b><b class='flag-5'>仿真</b>系統(tǒng)的編譯挑戰(zhàn)

    技術(shù)分享 | AVM合成數(shù)據(jù)仿真驗證方案

    AVM 合成數(shù)據(jù)仿真驗證技術(shù)為自動駕駛環(huán)境感知發(fā)展帶來助力,可借助仿真軟件配置傳感器、搭建環(huán)境、處理圖像,生成 AVM 合成數(shù)據(jù),有效加速算法驗證。然而,如何利用
    的頭像 發(fā)表于 03-19 09:40 ?3064次閱讀
    <b class='flag-5'>技術(shù)</b>分享 | AVM合成數(shù)據(jù)<b class='flag-5'>仿真</b>驗證方案

    電力電子半實物仿真(HIL)原理及應(yīng)用

    在電力電子及新能源領(lǐng)域,隨著系統(tǒng)復(fù)雜度的提升,傳統(tǒng)的純軟件仿真和實物測試已難以滿足高效、低成本的研發(fā)需求。電力電子半實物仿真技術(shù)(HardwareintheLoop,HIL)應(yīng)運而生,它通過將實際
    的頭像 發(fā)表于 02-25 18:10 ?900次閱讀
    電力電子半實物<b class='flag-5'>仿真</b>(HIL)原理及應(yīng)用

    CFD仿真與測試協(xié)同創(chuàng)新,構(gòu)建“仿真 + 實測”閉環(huán)

    積鼎科技專注于多相流領(lǐng)域,憑借自主研發(fā)的多相流仿真軟件以及高精度測試設(shè)備,成功構(gòu)建了“仿真 + 實測” 的閉環(huán)解決方案,助力企業(yè)在從設(shè)計優(yōu)化到生產(chǎn)驗證的整個過程中實現(xiàn)突破,為行業(yè)提供國產(chǎn)自主的軟
    的頭像 發(fā)表于 02-20 11:04 ?605次閱讀
    CFD<b class='flag-5'>仿真</b>與測試協(xié)同創(chuàng)新,構(gòu)建“<b class='flag-5'>仿真</b> + 實測”閉環(huán)

    單片機Debug與仿真區(qū)別

    單片機的開發(fā)是一個復(fù)雜的過程,涉及到硬件設(shè)計、軟件開發(fā)和測試等多個環(huán)節(jié)。為了確保單片機能夠按照預(yù)期工作,開發(fā)者需要使用Debug和仿真技術(shù)來檢測和修正代碼中的錯誤。 Debug(調(diào)試
    的頭像 發(fā)表于 12-19 09:47 ?934次閱讀

    Simcenter Flomaster熱流體仿真軟件

    SimcenterFlomasterSimcenterFlomaster提供全面的仿真工具集來幫助您設(shè)計、調(diào)試和運行熱流體系統(tǒng)。它可以連接PLM、CAD、仿真和工業(yè)物聯(lián)網(wǎng),助您快速實現(xiàn)數(shù)字化轉(zhuǎn)型
    的頭像 發(fā)表于 11-12 16:11 ?1168次閱讀
    Simcenter Flomaster熱流體<b class='flag-5'>仿真</b><b class='flag-5'>軟件</b>

    這些電源常用仿真軟件,你都知道嗎?

    電源系統(tǒng)的建模仿真是電源開發(fā)過程中不可或缺的一環(huán),它可以幫助工程師模擬電源系統(tǒng),測試電源功能,驗證電源方案可行性,優(yōu)化電源電路設(shè)計,加速電源系統(tǒng)開發(fā)。選擇一款合適的仿真軟件至關(guān)重要,本篇將對在電源
    的頭像 發(fā)表于 10-24 18:05 ?1343次閱讀
    這些電源常用<b class='flag-5'>仿真</b><b class='flag-5'>軟件</b>,你都知道嗎?

    【干貨分享】硬件在環(huán)仿真(HiL)測試

    技術(shù),通過接入真實的控制器,采用或者部分采用實時仿真模型來模擬被控對象和系統(tǒng)運行環(huán)境,實現(xiàn)整個系統(tǒng)的仿真測試。實時仿真硬件(也稱HIL測試機
    的頭像 發(fā)表于 09-19 17:15 ?2580次閱讀
    【干貨分享】<b class='flag-5'>硬件</b>在環(huán)<b class='flag-5'>仿真</b>(HiL)測試

    keil軟件仿真如何仿真輸入

    多種微控制器和處理器,如ARM、Cortex-M、8051等。Keil軟件的主要功能包括: 代碼編輯:提供語法高亮、代碼折疊、自動補全等功能。 編譯:將源代碼編譯成目標(biāo)代碼。 調(diào)試:在開發(fā)過程中,可以設(shè)置斷點、單步執(zhí)行、查看變量
    的頭像 發(fā)表于 09-02 10:25 ?2285次閱讀

    常用的仿真軟件有哪些

    在當(dāng)今的工程和技術(shù)領(lǐng)域,仿真軟件已經(jīng)成為了一種非常重要的工具。它們可以幫助工程師和研究人員在實際制造和測試之前,對系統(tǒng)或產(chǎn)品進(jìn)行模擬和分析。以下是一些常用的仿真
    的頭像 發(fā)表于 08-22 09:18 ?6389次閱讀

    仿真器的使用方法有哪些

    仿真器是一種用于模擬和測試電子系統(tǒng)、軟件硬件的工具。它可以幫助工程師在實際硬件軟件部署之前,對設(shè)計進(jìn)行驗證和
    的頭像 發(fā)表于 08-22 09:16 ?2339次閱讀