ICE(in circuit emulator) for 嵌入式系統 - 工程師

Hedwig avatar
By Hedwig
at 2013-10-17T23:18

Table of Contents

※ 引述《Hyozero (123)》之銘言:
原文恕刪
: 好奇wiki裡寫的:
: 1.An "emulator" gets its name because it emulates (imitates) the central
: processing unit of the embedded system's computer.
: 請問它是怎麼模擬CPU的阿?本來在板子上的CPU不是還在上面嗎?
那篇前面有提到一開始的emulator的確是可以插在板子上模擬CPU
不過以現在ICE的用途其實是誤稱(misnomer),我其實比較習慣講debugger
現在還是有些CPU可以用emulator模擬,不過都是比較小的MCU像是8051和AVR
: 2.Notably, when their program fails, most embedded systems simply become inert
: lumps of nonfunctioning electronics . Embedded systems often lack basic
: functions to detect signs of software failure, such as an MMU to catch memory
: access errors.
: 請問為何說Embedded system沒有可以檢查software failure的功能呢?
: 小弟的公司是用uart或I2C去讀code run時的print message或register值,這樣的功能
: 算是後來再附加上去的嗎?
用UART或I2C debug的前提是CPU還可以執行程式
如果因為一些原因bus hang住了,或是CPU讀到錯的指令跑飛了,就沒辦法這樣debug
這種情況就要靠ICE透過JTAG直接控制CPU來debug
: 3.With an ICE, the programmer can usually test pieces of code, then isolate the
: fault to a particular section of code, and then inspect the failing code and
: rewrite it to solve the problem.
: 這部份實在無法理解了,為何ICE能夠做到把code切分段去debug呢?
你可以在code裡面加break point,當CPU跑到break point的時候就會停下來
停下來之後可以透過ICE檢察系統狀態看是否正常
所以就可以知道跑到那段code前是沒問題的
另外也可以用step一步一步執行看程式會掛在那裡

以上是個人淺見,如有誤還請幫忙指正~

--

All Comments

Necoo avatar
By Necoo
at 2013-10-21T22:01
Quanna avatar
By Quanna
at 2013-10-21T23:10
Ethan avatar
By Ethan
at 2013-10-26T10:08
謝謝您! 還有個認知上的問題想請教
Queena avatar
By Queena
at 2013-10-26T17:51
我把ICE想成是模擬CPU或控制CPU,所以它可以直接看code跑
Margaret avatar
By Margaret
at 2013-10-28T10:34
的情況,也可以直接access register值和週邊device狀況
請問我這樣認知是正確的嗎?
Adele avatar
By Adele
at 2013-10-31T11:01
是[控制CPU],你所有在debug tool上的動作(load code
, 改值,single step)。都會透過ICE實際去access cpu。
他算是一種侵入式的debug 手段
Harry avatar
By Harry
at 2013-11-04T08:13
另外,為何ICE可以分段執行code 那是因為CPU裡面有跟ICE
相關的電路來做control,因此可以做到想停就停的境界。
James avatar
By James
at 2013-11-05T02:31
現在的IC就是利用CPU本身提供的單步執行功能,
Edward Lewis avatar
By Edward Lewis
at 2013-11-05T21:54
所以不是用另一個東西來模擬,那是滿早以前的方法,很昂貴
Hedda avatar
By Hedda
at 2013-11-07T07:17
現代已經用 JTage 構造直接做在IC內了
Queena avatar
By Queena
at 2013-11-09T07:30
現在都做成硬体的JTAG,所以都有限制只能設幾個breakpo

台積電法說 張忠謀宣布明年交棒

Agatha avatar
By Agatha
at 2013-10-17T22:27
台積電法說 張忠謀宣布明年交棒 民視 – 2013年10月17日 下午8:04 http://goo.gl/wiHceY 台積電舉行法說會,董事長張忠謀親自出席,不但宣告第三季台積電營 ...

面試(德州儀器,松下,微星,凌華,和碩...)

Ethan avatar
By Ethan
at 2013-10-17T21:26
小弟在面試的過程中 從這板上獲得了許多寶貴的資訊 因此現在也來回饋一下有需要找工作的板友 希望對大家有些幫助 標題括號內寫的是我有面試的 ...

天后宮的獎金

Dinah avatar
By Dinah
at 2013-10-17T21:14
有耳聞最新會發Q3的獎金(多少我就不透漏了) 請問根據以往的經驗 試用期未滿的新人會有得分一些嗎,還是免肖想? 誠心發問XD --

offer建議 (和碩/百佳泰/日月光/包子?)

Vanessa avatar
By Vanessa
at 2013-10-17T20:53
個人是台南人,116機械類學士畢, 目前獲得以下三個OFFER,包子上周去面試還不知道結果QQ 公司 和碩 百佳泰 日月光 包 ...

聯詠 業務工程師

Olivia avatar
By Olivia
at 2013-10-17T19:19
各位先進好,小弟在104上面看到聯詠科技有在徵業務工程師,印象中這個缺好像滿常看到他開缺的,是表示很賽所以常常有人離職嗎還是?有沒有了解�� ...