資源描述:
《仿真器概念及實現(xiàn)技術》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、仿真器概念及實現(xiàn)技術自從二十多年前MICROTEK推出首臺具有劃時代意義的仿真器(Micro-controllerIn-CircuitEmulator)以來,隨著IC和軟件集成平臺的飛速發(fā)展,仿真器也不斷賦予新的內容和新的挑戰(zhàn),因為它的發(fā)展必須與CPU同步,要想在總線速度為150Mhz*64bit的情況下實現(xiàn)TRACE已經成為不可能。MICETEK繼承了MICROTEK多年的經驗,相繼推出了EasyPack8052/8xc196/PIC16F,MICEpack186/251/68302,PowerPack386/486/Pentium/PentiumII/Pen
2、tiumIII,HitoolforARM/PowerPC等多系列仿真器。因此,介紹仿真器的技術實現(xiàn)有利于研發(fā)工程師的使用和選擇。仿真器與示波器,邏輯分析儀是研發(fā)工程師的三大法寶。一.仿真器的基本實現(xiàn)方式由于仿真器屬于一種高科技含量的開發(fā)工具,其實現(xiàn)的方式比較復雜。1.商用CPU這是一種最簡單的實現(xiàn)方式,直接采用最普通的商用CPU去設計仿真器。一般來說,CPU都有一些資源,如非屏蔽中斷,NMI,TRAP指令,Ready信號等等。在用商用CPU去設計仿真器時,基本上都會采用這些指令式信號,以達到單步Step,全速運行Go,斷點Breakpoint的功能。用商用CPU
3、去設計仿真器,一般來說其CPU的速度不能很快,如像8051,196等是可以采用這種方式的。若CPU的速度很快,則無法去實現(xiàn)。因為仿真器要在CPU的地址,數據總線上截取或插入某些資訊。CPU的速度太快,則根本無法在時序上去做截取或插入資訊的動作。用商用CPU去做仿真CPU,一般來說會碰到I/O管腳重整的困難,就像最簡單的8051或83C196,其A/D總線都可復用成I/O。而仿真器是要提供所有有關CPU的資料給用戶。所以,實際上CPU是以地址/數據總線的方式在運行。如用戶的設計是用I/O方式的話,仿真器就一定要重新整合一套I/O線路出來。這一點是最麻煩的地方,往往
4、有些簡單的仿真器就不能做到這一點。1.采用特殊的仿真模式有的商用CPU會提供一些特殊的仿真模式,其CPU還是采用商用CPU。但當CPU在上電或復位時,如果在CPU的某些管腳上灌一些特殊的電平或序列,則CPU就會進入一種特殊的仿真模式,如Philips的8051CPU,就是有一種叫“Hooks”的模式。進入這種模式之后,CPU會在地址數據總線上分時地提供一些用于I/O重建的信息。有了這種特殊的仿真模式,仿真器進行I/O重建相對來說比較簡單一些,但往往會存在著一些時序方面的問題。畢竟進入仿真模式之后的CPU的時序與普通CPU是有所不同的。如果用戶的設計非??量痰脑?,
5、有時會存在連不上目標板的問題,并且,這時的CPU在跑很高的時鐘頻率會遇到困難。1.使用專用仿真CPU–BondoutSilicon一般來說,當CPU的速度很快時,往往就需要專用的仿真CPU了。這時仿真器在控制方面,相對來說設計起來就比較簡單。但此時仿真器的性能,已在很大程度上取決于仿真CPU了。仿真CPU設計得好,則相對來說仿真器的功能及穩(wěn)定度都會比較好。但是,由于仿真CPU是一款專用的CPU,對于芯片廠商來說生產的數量非常少,往往其測試程度不會很高,專用的仿真CPU或多或少都會有些問題,就像目前國內仿真器普遍采用的W78958仿真CPU。這是Winbond為8
6、051做的一種仿真CPU,其在中斷,I/O的驅動能力等存在著問題。2.利用BDM,JTAG方式當CPU越來越復雜,速度越變越快時,以上方式都已不能滿足要求了。像PowerPC或Pentium,其內部有MMU,Cache,并且可亂序執(zhí)行,以往傳統(tǒng)的總線方式都不可行了。JTAG的提出,最初是給測試用的,主要目的是為了測試器件是否焊好,是否存在短路或斷路。后來,一些CPU的廠商把這一概念引進到了用于CPU內部。把JTAG的移位寄存器全部連到CPU內部的控制狀態(tài)寄存器,并增加一些仿真器專用的寄存器,如控制Memory的讀寫等。這時,仿真器在硬件上面已變得很簡單了,用戶設
7、計目標板時,只要把幾個控制管腳電平設計正確,就可以實現(xiàn)在線實時控制。目前,32位元以上的CPU普遍支持這種調試方式。1.ROM-Monitor絕大多數CPU廠商在新推出他的新一代CPU的同時,會相應的推出他的參考設計原型,這就是大家所熟知的ADS開發(fā)板,配上第三方的集成開發(fā)環(huán)境,就可以實現(xiàn)對相應CPU的軟件開發(fā),這就是ROM-Monitor仿真器的實現(xiàn)構成。如Motorola的DragonBallEZ/VZ328CPU的開發(fā)就是一例,需要MC68EZ/VZ328ADS板,集成開發(fā)環(huán)境CodeWarriorfor68k,Monitor-MetroTRK協(xié)議--建立
8、MC68EZ/VZ328