專利名稱:實(shí)用rom仿真型通用計(jì)算機(jī)開發(fā)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計(jì)算機(jī)仿真開發(fā)系統(tǒng)(以下簡稱開發(fā)系統(tǒng)),特別是一種通用的開發(fā)系統(tǒng),它不必更換仿真頭即可對各種以ROM(包括PROM、EPROM及EEPROM)芯片為程序存儲(chǔ)器的目標(biāo)計(jì)算機(jī)系統(tǒng)(以下簡稱目標(biāo)系統(tǒng))進(jìn)行開發(fā)調(diào)試工作。
現(xiàn)有的開發(fā)系統(tǒng)可分CPU仿真和ROM仿真兩類,前者以仿真CPU和仿真RAM代替目標(biāo)系統(tǒng)的CPU和程序存儲(chǔ)器,對目標(biāo)系統(tǒng)進(jìn)行調(diào)試開發(fā),其缺點(diǎn)是仿真頭部分不通用-開發(fā)不同種類CPU構(gòu)成的目標(biāo)系統(tǒng)需要更換不同的仿真頭,目前市場上出售的開發(fā)系統(tǒng)都屬于這類;后者以仿真RAM代替目標(biāo)系統(tǒng)的程序存儲(chǔ)器,對目標(biāo)系統(tǒng)進(jìn)行調(diào)試開發(fā)。這種開發(fā)系統(tǒng)是通用的,但目前這種類型的開發(fā)系統(tǒng)都沒有解決如何設(shè)置斷點(diǎn)、如何自動(dòng)完成調(diào)試和仿真狀態(tài)的切換及如何對目標(biāo)CPU內(nèi)部狀態(tài)及其外部RAM進(jìn)行讀寫操作等問題,因而開發(fā)功能十分有限。
本發(fā)明的任務(wù)是要提供一種通用的開發(fā)系統(tǒng),它不需更換仿真頭即可對各種以ROM芯片為程序存儲(chǔ)器的目標(biāo)系統(tǒng)進(jìn)行開發(fā)調(diào)試工作,其具備目前市場上出售的CPU仿真型開發(fā)系統(tǒng)的所有功能。
本發(fā)明涉及的開發(fā)系統(tǒng)屬于ROM仿真型。ROM仿真型開發(fā)系統(tǒng)的功能要達(dá)到一般市售CPU仿真型開發(fā)系統(tǒng)的水平就必須解決斷點(diǎn)設(shè)置、狀態(tài)自動(dòng)切換和CPU內(nèi)部狀態(tài)及其外部RAM讀寫操作這幾個(gè)問題。前兩個(gè)問題可通過設(shè)置斷點(diǎn)判斷和狀態(tài)控制邏輯來實(shí)現(xiàn)。第三個(gè)問題實(shí)現(xiàn)比較復(fù)雜,因?yàn)槟繕?biāo)CPU在其程序存儲(chǔ)器插座上不會(huì)產(chǎn)生寫有效信號(hào),所以無法用常規(guī)方法來了解目標(biāo)CPU的內(nèi)部狀態(tài)。本發(fā)明涉及的開發(fā)系統(tǒng)是通過如下方法完成的當(dāng)目標(biāo)CPU執(zhí)行到斷點(diǎn)地址以后,仿真頭中控制邏輯使目標(biāo)CPU執(zhí)行一段調(diào)試程序,該程序與仿真頭中控制邏輯配合可使某時(shí)刻目標(biāo)CPU的某內(nèi)部狀態(tài)反應(yīng)到仿真總線上而被接在仿真總線上的鎖存器鎖存,仿真頭通過該鎖存器來了解目標(biāo)CPU內(nèi)部狀態(tài)。采用上述方法使目標(biāo)CPU執(zhí)行相應(yīng)功能的調(diào)試程序段可使目標(biāo)CPU完成改變內(nèi)部狀態(tài)、或?qū)ζ渫獠縍AM進(jìn)行讀寫操作等任務(wù)。
以下將結(jié)合附圖
對本發(fā)明作進(jìn)一步的詳細(xì)描述。
圖一是本發(fā)明的一種具體結(jié)構(gòu)的邏輯線路圖。(圖中僅畫出仿真頭部分,其他部分與一般開發(fā)系統(tǒng)相同)。
圖中CT為28腳仿真插頭,開發(fā)時(shí)它被插在目標(biāo)系統(tǒng)的程序存儲(chǔ)器插座上;U0為8255(可編程并行接口),開發(fā)系統(tǒng)的主機(jī)系統(tǒng)(以下簡稱系統(tǒng))通過它來控制仿真頭的各種操作;U1為62256(32KRAM),它做為仿真存儲(chǔ)器,用來存放被調(diào)試的目標(biāo)程序;U2為6264(3KRAM),它的低4K做為斷點(diǎn)地址存儲(chǔ)器,其中的每位對應(yīng)62256的每個(gè)地址,置“1”表示該位對應(yīng)的地址為斷點(diǎn)地址,它與U3(74LS151--八選一數(shù)據(jù)選擇器)在仿真狀態(tài)中構(gòu)成斷點(diǎn)地址判斷邏輯;U2高4K在調(diào)試狀態(tài)中做暫存RAM;U5和U6均為74LS373(八位三態(tài)輸出鎖存器),二者共同存放一條兩字節(jié)無條轉(zhuǎn)向指令-PC←PC-2;U7和U9均為74LS245(八位雙向總線開關(guān)),它們與U8(74LS373)共同構(gòu)成仿真存儲(chǔ)器與仿真總線間的邏輯開關(guān);U8兼做目標(biāo)CPU的狀態(tài)鎖存器,用來鎖存斷點(diǎn)處目標(biāo)CPU地址總線A0-A7的狀態(tài);U4(74LS245)在仿真時(shí)用來切斷仿真存儲(chǔ)器與斷點(diǎn)地址判斷邏輯間的邏輯通路;U10為74LS139(雙2-4譯碼器),U11和U12均為74LS74(雙D觸發(fā)器);U10、U11和U12與其它門電路共同構(gòu)成仿真頭控制邏輯。
使用時(shí),先將CT插入目標(biāo)系統(tǒng)程序存儲(chǔ)器插座,然后使開發(fā)系統(tǒng)復(fù)位,系統(tǒng)復(fù)位信號(hào)使U11_1、U11_2、U12_1及U12_1全部置“1”,然后系統(tǒng)通過U0將目標(biāo)程序裝入U(xiǎn)1、將斷點(diǎn)地址裝入U(xiǎn)2,再將一條兩字節(jié)無條件轉(zhuǎn)移指令(PC←PC-2)裝入U(xiǎn)5和U6。開發(fā)時(shí)使目標(biāo)系統(tǒng)加電復(fù)位,此時(shí)仿真頭處于調(diào)試狀態(tài)U7、U8、U9構(gòu)成的邏輯開關(guān)被關(guān)閉;目標(biāo)CPU讀程序存儲(chǔ)器信號(hào)反復(fù)使U5和U6的輸出有效,使目標(biāo)CPU被迫反復(fù)執(zhí)行PC←PC-2指令,從而使目標(biāo)CPU中程序計(jì)數(shù)器“原地踏步”。然后使仿真頭進(jìn)入仿真狀態(tài),其方法是通過U0使U10_2的Y2端有效(低電平),則U11_2的CP端為低電平,然后將U0各口線全部設(shè)置為輸入狀態(tài),由于PC7有上拉電阻呈高電平,從而使U10_1和U10_2各輸出端為高電平,因而在U11_2的CP端出現(xiàn)一個(gè)正跳變而使其置“0”,在目標(biāo)CPU讀完一條完整的PC←PC-2指令后,U12_1的CP端也出現(xiàn)一個(gè)正跳變而使其置“0”,仿真頭進(jìn)入仿真狀態(tài)U7、U8、U9構(gòu)成的邏輯開關(guān)被打開;U5和U6的輸出被封鎖;目標(biāo)CPU執(zhí)行U1中的目標(biāo)程度,遇到斷點(diǎn)時(shí)U3的輸出使U12_1置“1”,仿真頭返回調(diào)試狀態(tài)并向系統(tǒng)發(fā)出中斷請求。系統(tǒng)響應(yīng)中斷后可通過U0對U1進(jìn)行讀寫操作。對目標(biāo)CPU內(nèi)部狀態(tài)及其外部RAM的操作可如下完成將原斷點(diǎn)處以下若干字節(jié)目標(biāo)程序移至U2高4K暫存,將一段調(diào)試程序(該程序的作用是使目標(biāo)CPU的某內(nèi)部狀態(tài)在執(zhí)行至斷點(diǎn)時(shí)出現(xiàn)在A0-A7上)替換進(jìn)原目標(biāo)程序位置,并在程序結(jié)束處設(shè)斷點(diǎn),然后使仿真頭進(jìn)入仿真狀態(tài),這時(shí)目標(biāo)CPU并沒有執(zhí)行目標(biāo)程序而是在執(zhí)行該調(diào)試程序,執(zhí)行到斷點(diǎn)后返回調(diào)試狀態(tài),此時(shí)目標(biāo)CPU的某內(nèi)部狀態(tài)已被鎖存在U3中可供U0讀取。最后仿真頭仍采用上述方法使目標(biāo)CPU執(zhí)行一段恢復(fù)狀態(tài)程序來恢復(fù)其內(nèi)部可能被破壞的狀態(tài)并返回原斷點(diǎn)地址,仿真頭將原目標(biāo)程序挪回原位并重新設(shè)置斷點(diǎn)后可使其繼續(xù)執(zhí)行目標(biāo)程序。改變目標(biāo)CPU內(nèi)部狀態(tài)及對其外部RAM進(jìn)行讀寫操作可采用上述方法執(zhí)行相應(yīng)的調(diào)試程序段來完成。在整個(gè)仿真開發(fā)過程中,目標(biāo)CPU在開發(fā)系統(tǒng)控制下,同開發(fā)系統(tǒng)一起交替對仿真存儲(chǔ)器進(jìn)行操作,共同完成開發(fā)調(diào)試工作。
圖中設(shè)置了聯(lián)機(jī)開關(guān)K,當(dāng)使用兩個(gè)或多個(gè)仿真頭聯(lián)機(jī)開發(fā)8位以上CPU構(gòu)成的目標(biāo)系統(tǒng)時(shí),將各仿真頭的A點(diǎn)復(fù)接,并使其中一個(gè)仿真頭的K閉合(輸出同步控制信號(hào)),其他仿真頭中的K斷開(接收同步信號(hào)),這樣,系統(tǒng)就可同時(shí)使用多個(gè)仿真頭對8位以上CPU構(gòu)成的目標(biāo)系統(tǒng)進(jìn)行開發(fā)調(diào)試工作。
上面介紹的計(jì)算機(jī)開發(fā)系統(tǒng)按上述方法可以仿真2764、27128、27256等ROM芯片來開發(fā)各種不同的目標(biāo)系統(tǒng),增加仿真RAM的容量可仿真27512等更高容量的芯片,它可完成讀寫目標(biāo)程序、讀寫目標(biāo)CPU內(nèi)部狀態(tài)及其外部RAM、設(shè)置斷點(diǎn)、單步執(zhí)行(每條指令都設(shè)置斷點(diǎn))等功能。開發(fā)不同CPU構(gòu)成的目標(biāo)系統(tǒng)只需執(zhí)行不同的仿真開發(fā)程序即可。
本發(fā)明涉及的開發(fā)系統(tǒng)的結(jié)構(gòu)也可做成一個(gè)單獨(dú)的仿真頭,它與目標(biāo)CPU共同構(gòu)成一個(gè)完整的開發(fā)系統(tǒng)。圖二是其一種具體結(jié)構(gòu)的邏輯原理圖。圖中CT為28腳仿真插頭;U0為8255,用來做鍵盤、發(fā)光數(shù)碼管顯示器及串行口的接口;U1為27256(32KEPROM),其中存放著各種CPU的監(jiān)控及仿真調(diào)試程序;U2(62256)為仿真存儲(chǔ)器,用來存放被開發(fā)的目標(biāo)程序;U5、U6和U7均為74LS244(八位單向總線開關(guān)),它們在仿真總線上起驅(qū)動(dòng)作用;U3(74LS373)為目標(biāo)CPU的狀態(tài)鎖存器,它在寫操作中做數(shù)據(jù)暫存器-由于目標(biāo)CPU在其程序存儲(chǔ)器插座上不會(huì)產(chǎn)生寫有效信號(hào),因此,目標(biāo)CPU對仿真頭中RAM及I/0口的寫操作是通過監(jiān)控程序與CON(仿真頭控制邏輯-包括斷點(diǎn)判斷、狀態(tài)自動(dòng)轉(zhuǎn)換、寫操作控制等邏輯)相配合分寫暫存寄存器和寫操作兩步完成的。
權(quán)利要求
1.一種計(jì)算機(jī)仿真開發(fā)系統(tǒng)(以下簡稱開發(fā)系統(tǒng)),它不必更換仿真頭即可對各種以ROM(包括PROM、EPROM、EEPROM)為程序存儲(chǔ)器的目標(biāo)計(jì)算機(jī)系統(tǒng)進(jìn)行調(diào)試開發(fā)。其特征在于A、采用ROM仿真形式。B、設(shè)有斷點(diǎn)判斷和狀態(tài)控制邏輯。C、通過使目標(biāo)CPU執(zhí)行某段調(diào)試程序而使其內(nèi)部某狀態(tài)反應(yīng)在仿真總線上而被連接在仿真總線上的鎖存器鎖存的方法來了解目標(biāo)CPU的內(nèi)部狀態(tài)。D、通過使目標(biāo)CPU執(zhí)行某段調(diào)試程序來改變其內(nèi)部狀態(tài)或?qū)ζ渫獠縍AM進(jìn)行讀寫操作。
2.按權(quán)力要求1規(guī)定的開發(fā)系統(tǒng),其特征是連接在仿真總線上的鎖存器僅接在仿真總線A0-A7上。
3.按權(quán)力要求1、2規(guī)定的開發(fā)系統(tǒng),其特征是當(dāng)目標(biāo)CPU執(zhí)行至斷點(diǎn)時(shí),仿真頭中硬件邏輯迫使目標(biāo)CPU反復(fù)執(zhí)行PC←PC-2指令,從而使目標(biāo)CPU內(nèi)程序計(jì)數(shù)器“原地踏步”,然后再對仿真存儲(chǔ)器進(jìn)行讀寫操作。
4.按權(quán)力要求1、2、3規(guī)定的開發(fā)系統(tǒng),其特征是目標(biāo)CPU在開發(fā)系統(tǒng)的控制下,同開發(fā)系統(tǒng)一起在整個(gè)仿真開發(fā)過程中交替對仿真存儲(chǔ)器進(jìn)行操作,共同完成開發(fā)調(diào)試工作。
5.按權(quán)力要求1、2規(guī)定的開發(fā)系統(tǒng),其特征是開發(fā)系統(tǒng)被做成單獨(dú)的仿真頭,它與目標(biāo)CPU共同構(gòu)成一個(gè)完整的開發(fā)系統(tǒng)。
6.按權(quán)力要求1、2、5規(guī)定的開發(fā)系統(tǒng),其特征是目標(biāo)CPU對仿真頭的寫操作是通過仿真頭中的監(jiān)控程度與控制邏輯相配合分寫暫存寄存器(即目標(biāo)CPU狀態(tài)鎖存器)和寫操作兩步完成的。
全文摘要
本發(fā)明公開了一種不必更換仿真頭即可對各種不同目標(biāo)計(jì)算機(jī)系統(tǒng)進(jìn)行開發(fā)調(diào)試的計(jì)算機(jī)仿真開發(fā)系統(tǒng),它采用ROM仿真形式,通過設(shè)置斷點(diǎn)判斷和狀態(tài)控制邏輯來完成斷點(diǎn)設(shè)置和狀態(tài)自動(dòng)切換,通過使目標(biāo)CPU執(zhí)行某段調(diào)試程序而使其內(nèi)部某狀態(tài)反應(yīng)在仿真總線上而被連接在該總線上的鎖存器鎖存的方法來了解目標(biāo)CPU內(nèi)部狀態(tài),通過使目標(biāo)CPU執(zhí)行某段調(diào)試程序來改變其內(nèi)部狀態(tài)或?qū)ζ渫獠縍AM進(jìn)行讀寫操作,從而使其具備一般市售CPU仿真型計(jì)算機(jī)仿真開發(fā)系統(tǒng)的所有功能。
文檔編號(hào)G06F17/00GK1087188SQ93117609
公開日1994年5月25日 申請日期1993年9月10日 優(yōu)先權(quán)日1993年9月10日
發(fā)明者閻辛 申請人:閻辛