微電腦和多微電腦系統以及模擬方法
2023-06-05 02:24:26 1
專利名稱:微電腦和多微電腦系統以及模擬方法
技術領域:
本發明涉及一種如單晶片微電腦等的微電腦,包括有多個微電腦的多微電腦系統(multi-microcomputer system),及一種改進的用於開發微電腦軟體的模擬(emulation)方法。
圖1是在開發單晶片微電腦軟體而進行模擬時其結構的方塊圖。在模擬時的結構是包括模擬對象的模擬晶片2(單晶片微電腦),ICE(In-Circuit Emulatior,分離模擬器)1及存儲器IC3,其被互相連接。
ICE1是在開發模擬晶片2的軟體時,利用監視模擬晶片2及存儲器IC3的操作狀況,對開發中的軟體進行除錯的工具。存儲器IC3在其被實際操作時,被建立來模擬在具有模擬晶片2的單晶片微電腦及原來的控制標的單元之間信號的接收與傳送。
參閱圖2及圖3的流程圖及圖4的時序圖,說明在執行此種傳統的模擬時,模擬晶片2從存儲器IC3中讀出數據的操作。
首先,模擬晶片2限定存儲器IC3之地址,在該處存儲著被讀取的數據(在圖2中之S26及在圖4a)。接著,若R/W信號被許可(圖2之S28及圖4b),則所限定(圖2的S26及圖4a)的地址即被輸出(圖2的S30及圖4b)。
另外,在來自模擬晶片2的R/W信號被許可的狀態下(圖3的S36及圖4e),存儲器IC3若輸入地址(圖3的S38及圖4d),則會將該地址的數據輸出(圖3的S40及圖4f)。
模擬晶片2,若R/W信號被許可(圖2的S32及圖4b),讀取自存儲器IC3輸出(圖3的S40及圖4f)的數據(圖2的S34及圖4c)。
其次,參照圖5及圖6的表示模擬晶片2及存儲器IC3之動作的流程圖,及圖7的時序圖,說明寫入至模擬晶片2之存儲器IC3的動作首先,模擬晶片2限定預先寫入存儲器IC3數據的地址(圖5的S10及圖7a)。接著,若R/W信號被許可(圖5的S12及圖7b),則限定(圖5的S10及圖7a)的地址被輸出(圖5的S14及圖7b)。接著,若R/W信號被許可(圖5的S16及圖7b),則輸出將被寫入的數據(圖5的S18及圖7c)。
另一方面,在來自模擬晶片2的R/W信號被許可的狀態(圖6的S20及圖7e),存儲器IC3若輸入地址(圖6的S22及圖7d),模擬晶片2輸出(圖5的S18及圖7c)的數據被存儲(圖6的S24及圖7f)於該地址。
圖8示出傳統的多微電腦系統的一例子,被稱為「雙微電腦系統」,其配置有兩部微電腦以加強系統的可靠度。雙微電腦系統包括一主微電腦4其包括一CPU4a及一存儲器5,及一次微電腦6其包括一CPU6a及一存儲器7,及一存儲器IC8被建立在主微電腦4及次微電腦6之間。
在此系統中,主微電腦4的CPU4a可直接存取存儲器5,且次微電腦6的CPU6a可直接存取存儲器7,但主微電腦4的CPU4a無法直接存取次微電腦6的存儲器7。為完成此動作,CPU4a首先存取存儲器IC8,然後要求次微電腦6存取存儲器IC8。響應此請求,次微電腦6使CPU6a去存取存儲器IC8,其然後存取存儲器7。
次微電腦6的CPU6a無法直接存取主微電腦4的存儲器5。為了達到此點,主微電腦4要求次微電腦6將存儲器7的數據寫入至存儲器IC8,響應此請求,次微電腦6存取存儲器7,然後存取存儲器IC8。當存儲器IC8被存取時,一確認(acknowledge)信號被輸出至主微電腦4。響應此確認信號,CPU4a先存取存儲器IC8,然後是存儲器5。
在上述模擬時的結構中,為了訪問外部存儲器IC3,模擬晶片2必須通過控制地址總線、數據總線及控制總線以與之接口。另外當多個外部存儲器IC被使用時,將使得對控制總線的控制變得複雜。
如前述所示,一旦模擬晶片經由一界面存取外部存儲器,存取速度將變慢。
再者,雙微電腦系統需要在印刷電路板上設置一額外的存儲器IC8,故而會耗費時間在交換資訊上,並且需要較大尺寸的印刷電路板,其會反應在製作成本上。
為了解決上述問題,日本專利公開公報63-25741號(1988)提出經由內置的輸入/輸出控制裝置控制模擬晶片。日本專利公開公報61-168051號(1986)披露另一種方法,其中,模擬晶片的RAM針對一較短周期的時間被測試。日本專利公開公報5-250204號(1993)披露另一方法,其中,當模擬晶片的CPU在執行中被一外部裝置加以停止時,CPU周邊的I/O控制器及使用者電路均由一外部之全功能CPU控制。本發明可直接自外部存取內置於微電腦中的RAM。
本發明系被用來解決前述之問題,在本發明之第一至第四方面提供一微電腦,其目的是允許可自外部直接存取內部的RAM。
在本發明之第五及第八方面,提供一多微電腦系統,其目的是無需存儲器IC來交換資訊,故而可縮短外部存儲器的存取時間,且可減少製作成本。
在本發明之第六及第七方面,提供一種模擬的方法,其目的是使一外部存儲器可在與微電腦被執行一樣快的速度下被存取。
根據本發明之第一方面的微電腦包括一CPU,一輸入/輸出埠,一具有RAM的存儲器裝置;一控制總線,一地址總線及一數據總線,用以連接前述CPU,輸入/輸出埠及存儲器裝置;存儲器裝置,用以存儲一特定數據;及在存儲器裝置存儲特定數據時用以直接存取第一存儲器裝置的RAM之存取裝置。
在此微電腦中,當存儲器裝置存儲特定數據時,存取裝置可直接自外部存取RAM。
因此,其可能直接自外部存取內部的RAM,特別是當模擬被執行時,其可能以和執行速度一樣快地自模擬晶片的微電腦存取RAM。
根據本發明之第二方面,存取裝置包括切換裝置,當第二存儲器裝置存儲所需的數據時,用以分別自數據總線至控制總線切換輸入/輸出埠的連接,藉以自外部輸入一用以使CPU進入保持(hold)狀態的指令信號,並且自外部輸入一讀/寫準許信號,至地址總線藉以自外部輸入一地址信號給存儲器裝置的RAM,並至部分的數據總線藉以對存儲器裝置的RAM寫入及讀出數據。
此微電腦,當存儲器裝置存儲器特定數據時,使切換裝置分別自數據總線至控制總線,地址總線及部分的數據總線,分開地切換輸入/輸出埠的連接。
如此,使存取裝置能直接自外部存取RAM,特別當模擬被執行時,內部的RAM可和執行速度一樣快地自模擬晶片的微電腦被存取。
根據本發明之第三方面的微電腦包括一額外的控制總線,一額外的地址總線,及一額外的數據總線,其中存取裝置包括切換裝置,在存儲器裝置存儲特定數據時,用以自數據總線分別至額外的地址總線切換輸入/輸出埠的連接,藉以自外部將一地址輸入給存儲器裝置的RAM,至額外的數據總線,用以對存儲器裝置的RAM寫入及讀出數據,同時至額外的控制總線,藉以自外部輸入一讀/寫準許信號。
在此微電腦中,當存儲器裝置存儲特定數據時,切換裝置可將輸入/輸出埠至數據總線的連接,分別切換至額外的地址總線,額外的數據總線,及額外的控制總線。
如此,內部RAM可直接自外部被存取,特別當模擬被執行時,其可和執行速度一樣快地自模擬晶片的微電腦存取RAM。
根據本發明的第四方面,存取裝置包括DMA控制裝置,用以在存儲器裝置存儲特定數據時,自外部直接存取RAM。
此微電腦允許DMA控制裝置在存儲器裝置存儲特定數據時,直接自外部存取RAM。
如此,內部RAM可被自外部直接存取,特別當模擬被執行時,其可能和執行速度一樣快地自模擬晶片的微電腦存取RAM。
根據本發明之第五方面的多微電腦包括主微電腦,其運作如系統的主要部分,及第一方面至第四方面中至少一微電腦,以做為次微電腦,其中主微電腦可直接存取次微電腦的RAM。
此多微電腦系統允許本發明第一至第四方面的微電腦被單獨或聯合地用做次微電腦。然後,主微電腦直接存取次微電腦的RAM。
此微電腦系統消除了對做為主微電腦及次微電腦間之界面的存儲器IC的需要性,並且主微電腦可在較短的存取時間內存取外部的存儲器,所以製作成本可降低。
根據本發明之第六方面的模擬方法,在開發微電腦的軟體時,系包括下列步驟準備要被模擬的第一微電腦及至少第一至第四方面之任一微電腦,利用由存取裝置自第一微電腦直接存取第二微電腦的RAM及模擬第一微電腦的操作來開發軟體。
除了模擬對象的第一微電腦外,此模擬方法允許本發明第一至第四方面的一或多部微電腦被用作第二微電腦。第一微電腦可直接存取第二微電腦的RAM,且軟體可經由模擬電腦的操作而被開發。
因此,模擬晶片的微電腦可和執行速度一樣快地存取一外部存儲器。
根據本發明之第七方面的模擬方法允許模擬由第一微電腦執行的信號之接收及傳送,使得第二微電腦的RAM可做為信號接收及傳送的對象。
此模擬方法模擬由第一微電腦執行的信號之接收與傳送,使得第二微電腦的RAM可做為信號接收及傳送的對象而被直接存取。
因此,模擬晶片的微電腦可和執行速度一樣快地模擬實際操作中信號的接收及傳送。
根據本發明第八方面的多微電腦系統包括一主微電腦,其運作如系統的主要部分,及至少一次微電腦,可在主微電腦的控制下操作,其中,主微電腦可為一或多部本發明第一方面至第四方面中任一微電腦,次數電腦可直接存取主微電腦的RAM。
此多微電腦系統使用一或多部本發明第一方面至第四方面中任一微電腦做為主微電腦,且次微電腦可在主微電腦的控制下操作以直接存取主微電腦的RAM。
因此,無需存儲器IC在主微電腦及次微電腦間進行資訊交換,故而由於元件數目的減少,降低了製作成本並增加了操作可靠度。
本發明之前述及進一步的目的與特徵將經由結合附圖詳盡地描述予以闡明。
圖1是描述在模擬時單晶片微電腦之結構的方塊圖;圖2是描述模擬晶片及存儲器IC執行程序的流程圖;圖3是描述模擬晶片及存儲器IC執行程序的流程圖;圖4是描述模擬晶片及存儲器IC執行程序的時序圖;圖5是描述模擬晶片及存儲器IC執行程序的流程圖;圖6是描述模擬晶片及存儲器IC執行程序的流程圖;圖7是描述模擬晶片及存儲器IC執行程序的時序圖;圖8是描述做為傳統多微電腦系統的例子之雙微電腦系統結構的方塊圖;圖9是描述根據本發明之模擬方法的一例子之結構的方塊圖;圖10是描述本發明第一實施例的模擬晶片之結構的方塊圖;圖11是描述根據本發明之模擬晶片的執行程序之流程圖;圖12是描述根據本發明之模擬晶片的執行程序之流程圖;圖13是描述根據本發明之模擬晶片的執行程序之時序圖;圖14是描述根據本發明之模擬晶片的執行程序之時序圖;圖15是描述根據本發明之模擬晶片的執行程序之流程圖;圖16是描述根據本發明之模擬晶片的執行程序之流程圖;圖17是描述根據本發明之模擬晶片的執行程序之時序圖;圖18是描述根據本發明之模擬晶片例子之結構的方塊圖;圖19是描述根據本發明之模擬晶片的執行程序之流程圖;圖20是描述根據本發明之模擬晶片的執行程序之流程圖;圖21是描述根據本發明之模擬晶片的執行程序之時序圖22是描述根據本發明之多微電腦系統的例子之結構的方塊圖;圖23是例示圖14所示之多微電腦系統結構之方塊圖;圖24是描述多微電腦系統之主微電腦的執行程序之流程圖;圖25是描述次微電腦的微電腦DMA控制器的執行程序之流程圖;圖26是描述圖23所示之多微電腦的執行程序之時序圖;圖27是描述根據本發明之多微電腦系統的例子之結構的方塊圖;圖28是描述圖27所示之多微電腦系統結構之方塊圖;圖29是描述次微電腦系統之執行程序的流程圖;圖30是描述主微電腦的微電腦DMA控制器的執行程序之流程圖;圖31是描述圖27所示之多微電腦系統結構之時序圖。
實施例一圖9是描述根據本發明第一及第二方面的微電腦之結構的方塊圖,及根據本發明之第六方面的模擬方法。所示出的結構指出要被模擬的模擬晶片68(單晶片微電腦)被連接到一ICE69(分離模擬器)及另一模擬晶片67(單晶片微電腦),同時ICE69及模擬晶片67亦相互連接。
在為模擬晶片68開發軟體時,ICE69是用來監視模擬晶片68之操作狀況及模擬晶片67之狀況,以及對開發中之軟體除錯的工具。模擬晶片67在模擬晶片68被操作時被用以模擬所產生之信號的接收與傳送。模擬晶片67及68分別被提供有RAM自由模式寄存器67a及68a,且當這些RAM自由模式寄存器67a及68a被設定為RAM自由模式,可使用自模擬晶片68至內置於模擬晶片67中的RAM的直接存取。
圖10是描述使用於根據本發明之第一及第二方面的微電腦中的模擬晶片67之結構的方塊圖。模擬晶片67經由數據總線46a,控制總線46b 地址總線46c被連接到CPU42,RAM43,輸入/輸出埠44,RAM自由模式寄存器44a(存儲器裝置)及外部設備42a(ROM,DMA控制器等)。輸入/輸出埠44被用以在輸入及輸出間切換。RAM自由模式寄存器44a在RAM自由模式時被CPU42設定標誌,由此由外部至RAM43可能進行直接存取。
當RAM自由模式寄存器44a被設定標誌時,切換裝置44b由數據總線46a至控制總線46b切換部分輸入/輸出埠44的連接,藉以接收#CSRAM(晶片選擇RAM)信號,或自外部接收讀/寫準許信號,同時亦為#CSRAM信號及讀/寫準許信號切換部分輸入/輸出埠44至個別的輸入埠。
切換裝置44b由數據總線46a至地址總線46c切換部分輸入/輸出埠44的連接,藉以自外部接收一地址給RAM43,同時針對此地址切換部分輸入/輸出埠44至輸入埠。
切換裝置44b由數據總線46a至另一地址總線46a切換部分輸入/輸出埠44,經其數據被寫入至RAM43中,亦自該處被讀出,同時也切換輸入/輸出埠44至數據輸入/輸出埠。
模擬晶片67及68的操作下面將參考圖11及圖12的流程圖與圖13及圖14的時序圖,其中,圖11及圖14系顯示模擬晶片68的操作,圖12及圖13系顯示模擬晶片67的操作。
模擬晶片67對RAM自由模式寄存器44a(67a)(圖12中的S44),並將輸入/輸出埠44切換至#CSRAN信號的輸入埠(圖13b中),RAM43之一地址的輸入埠(圖13c中),一數據輸入/輸出埠(圖13e中)及來自外部(圖12中的S64)的讀/寫準許信號之輸入埠(圖13d)。
當#CSRAM信號模擬晶片68(圖12的S66及圖14b)被輸入,CPU42輸出#HOLD信號,其然後自己被輸入(圖12的S68及圖14c)。當CPU42接收#HOLD信號時,其輸出#HOLDA(HOLD確認)信號(圖12的S70及圖14d),且其進入一保持狀態(圖12的S72),其中,外部存取可被執行。
在輸出#CSRAM信號之後(圖11中的S44),模擬晶片68對將被讀出或被寫入RAM43的數據(圖11的S48),限定其在RAM43中的地址。當R/W信號被許可(圖11的S50及圖14e),經限定的地址被輸出(圖11的S52及圖14)。
當R/W信號被許可(圖11的S54及圖14e)時,模擬晶片68由RAM43讀出數據或寫入數據至RAM43中(圖11的S56及圖14f)。
當有任何其他數據要被讀出或寫入RAM43時(圖11的S58),模擬晶片68會限定RAM43數據的地址(圖11的S48)。然後,相同的程序會被重複。
當不再有其他數據要被讀出或寫入RAM43時(圖11的S58),模擬晶片68輸出一RST信號給模擬晶片67(圖11的S60)。模擬晶片67響應由CPU42(圖12的S76)接收到RST信號,會重置其自己(圖12的S74)。
實施例二實施例二是有關根據本發明之一方面的一微電腦及根據本發明第六方面的模擬方法。模擬方法具有如圖9所示相同的結構。為了簡化,將省略對此結構的說明。微電腦本質上具有如圖10所示的結構,但因為此微電腦為處理器模式,其為無法自外部控制的次微電腦,即使在標誌被設定時,RAM自由模式寄存器44a亦將不會主動地切換輸入/輸出端44至#CSRAM信號的輸入埠,RAM43的地址信號的輸入埠,或數據輸入/輸出埠。結構的其他部分和參考圖10的描述相同。
模擬晶片67及68的操作下面將參閱顯示模擬晶片68之操作的圖15與顯示模擬晶片67之操作的圖16兩個流程圖,以及其顯示於圖17的時序圖加以說明。
模擬晶片68對RAM自由模式寄存器68a設定標誌(圖15的S78),並輸出一#HOLD信號給模擬晶片67(圖15的S80)。
模擬晶片67系位於處理器模式,其中,其為無法自外界控制的次微電腦,且在CNVSS端用以決定模式的信號為H電平(圖17b)。首先,一標誌被設定給RAM自由模式寄存器44a(67a)(圖16的S98及圖17a),且響應自模擬晶片68輸入#HOLD信號(圖16的S100及圖17c),切換裝置44b將輸入/輸出埠44的部分連接由數據總線46a切換至控制總線46b,藉以接收#CSRAM信號,同時切換部分輸入/輸出端44至CS輸入埠(圖16的S102)。然後,在CPU42輸出#HOLDA信號之後(圖16的S104),其便進入一保持狀態(圖16的S106)。
在輸出#HOLD信號給模擬晶片67之後(圖15的S80),模擬晶片68輸出一#CSFRAM(晶片選擇自由RAM)信號給模擬晶片67的CS輸入埠(圖15的S82)。
響應#CSFRAM信號的接收(圖16的S108及圖17d),切換裝置44b將輸入/輸出埠44的部分連接由數據總線46a切換至地址總線46c,藉以接收外部的一RAM43的地址信號,同時將部分輸入/輸出埠44切換至地址信號的一輸入埠(圖16的S110及圖17e)。
此外,切換裝置44b將輸入/輸出埠44的部分連接由數據總線46a切換至數據總線46a,數據可由此被讀出或寫入RAM43,同時並將部分輸入/輸出埠44切換至數據輸入/輸出埠(圖16的SI10及圖17g)。
切換裝置44b將輸入/輸出埠44的部分連接由數據總線46a切換至控制總線46b,藉以自外界接收一讀/寫準許信號,並切換部分輸入/輸出埠44至讀/寫準許信號的輸入埠(圖16的S110及圖17),藉此以讀/寫信號控制數據總線46a的輸入與輸出。
在輸出#CSFRAM信號後(圖15的S82),模擬晶片68對自RAM43讀出或寫入的數據限定其在RAM43中的地址。當R/W信號被許可時(圖15的S86及圖17f)。限定的地址被輸出(圖15的S88及圖17f)。
當R/W被許可時(圖15的S90及圖17f),模擬晶片68為需求的數據限定RAM43的地址(圖15的S84)。而後,相同的步驟被重複。
當不再有任何其他數據要由RAM43讀出或寫入時,模擬晶片68輸出RST信號給模擬晶片67(圖15的S96)。當CPU42接收RST信號時(圖16的S112),模擬晶片67被重置(圖16的S114)。
實施例三實施例三系有關根據本發明之第一及第三方面的微電腦,及根據本發明之第六方面的模似方法。模擬方法具有如圖9所示相同的結構。為了簡化,將省略對此結構的說明。
圖18系描述構成根據本發明之第一及第三方面的微電腦之模擬晶片67的結構之方塊圖。描述的結構指出模擬晶片67包括有CPU42,雙埠RAM43a,輸入/輸出埠44,RAM自由模式寄存器47(存儲器裝置),及外設功能裝置(ROM、DMA控制器等)48,其經由包括數據總線46a,控制總線46b及地址總線46c的一組總線而被連接。雙埠RAM43a及輸入/輸出端44經由專用數據總線45a,專用控制總線45b及專用地址總線45c被連接。
當寄存器47系位於RAM自由模式時,其中模擬晶片67允許自外部直接存取雙埠RAM43a,RAM自由模式寄存器47會被CPU42設定標誌。
當RAM自由模式寄存器47被設定標誌時,切換裝置47a將輸入/輸出埠44的部分連接切換至專用地址總線45c,藉以輸入外部的地址信號給雙埠RAM43a,同時切換部分輸入/輸入埠44至地址信號的輸入埠。
此外,切換裝置47a將輸入/輸出埠44的部分連接由數據總線46a切換至專用數據總線45a。需求的數據可經其自RAM43a被寫入或讀出,同時切換部分輸入/輸出端44至數據輸入/輸出埠。
切換裝置47a將輸入/輸出埠44的部分連接自數據總線46a切換至專用控制總線45b,藉以自外部一讀/寫準許信號,同時切換部分輸入/輸出端44至讀/寫準許信號的輸入埠。
模擬晶片67及68的操作下面將參閱顯示模擬晶片68之操作的圖19與顯示模擬晶片67之操作的圖20兩個流程圖,以及其顯示於圖21的時序圖加以說明。
首先,模擬晶片68對RAM自由模式寄存器68a設定標誌(圖19的S120)。
模擬晶片67對RAM自由模式寄存器47(67a)設定標誌(圖20的S138及圖21a),且CPU42輸出並輸入#CSRAM信號(圖20的S140及圖21b)。然後,CPU42輸出並輸入#HOLD信號(圖20的S142及圖21c)。響應#HOLD信號的接收,CPU42輸出#HOLDA信號(圖19的S144),並進入保持狀態(圖20的S146),藉此使數據總線46a,控制總線46b及地址總線46c為不能操作(圖21d)。
當CPU42輸出及輸入#CSRAM信號(圖20的S140及圖21b)或輸出及輸入#HOLD信號(圖20的S142及圖21c)時,模擬晶片67將輸入/輸出埠44切換至RAM43之地址信號的輸入埠、數據輸入/輸出埠,及可經其自外界輸入讀/寫準許信號的輸入埠(圖20的S148及圖21e)。結果,專用的總線45a,45b,及45c變為可操作,藉以使雙埠RAM43a可自外部經專用總線45a,45b,及45c(圖21f)而被存取。
在對RAM自由模式寄存器68a設定標誌後(圖19的S120),模擬晶片68對將被讀出或寫入雙埠RAM43a的數據設定其在雙埠RAM43a中的地址(圖19的S124)。當R/W信號被許可時(圖19的S126及圖21e),所限定的地址被輸出(圖19的S128及圖21e)。
當R/W信號被許可時(圖19的S130及圖21e),需求的數據經由專用總線45a,45b,及45c被讀出或寫入雙埠RAM43a(圖19的S132及圖21e,f)。
當有任何其他數據要被讀出或寫入RAM43a時(圖19的S134),模擬晶片68會限定RAM43數據的地址(圖19的S124)。然後,相同的程序會被重複。
當不再有其他數據要被讀出或寫入RAM43a時(圖19的S134),模擬晶片68輸出RST信號給模擬晶片67(圖19的S136)。
模擬晶片67響應由CPU42(圖20的S150)接收到RST信號,會重置其自己(圖20的S152)。
實施例四圖22系描述根據根據本發明第一及第四方面的微電腦,及根據本發明第五方面的多微電腦系統的結構之方塊圖。在所描述的多微電腦系統中,包括CPU72a及存儲器72的主微電腦70,及包括CPU73a與存儲器(存儲器裝置)73的次微電腦71被連接。主微電腦70可直接存取在次微電腦71的存儲器73中之RAM。
圖23系繪示顯示於圖22中的多微電腦系統結構之詳細方塊圖。此多微電路系統包括一主微電腦70,其包含CPU57,DMA設定輸出埠58,存儲器57a,DMA觸發輸入/輸出埠59,及雙I/O埠60,且經由總線57b被連接在一起;及一次微電腦71,其包含CPU61a,DMA設定輸出埠62,RAM66,DMA觸發輸入/輸出埠63,DMA控制器65,及雙I/O埠64,且經由總線61b被連接在一起。
DMA控制器65直接接受信號及直接傳送信號至CPU61a及DMA觸發器輸入/輸出埠63。
DMA設定輸出埠58及DMA設定輸入埠62均為RAM自由模式寄存器,且當它們被設定標誌時,其允許CPU57直接存取RAM66。DMA設定輸出埠58設定標誌給DMA設定輸入埠62a,並重置它。
DMA觸發輸入/輸出埠59及63在其間相互地接收並傳送信號。雙I/O埠60及64在其間相互地接收並傳送信號。
主微電腦70及次微電腦71的操作下面將參閱顯示主微電腦70之操作的圖24與顯示次微電腦71之DMA控制器的操作的圖25兩個流程圖,以及其顯示於圖26的時序圖加以說明。
主微電腦70對DMA設定輸出埠58設定標誌(圖24的S160)。DMA設定輸入埠62亦被設定標誌。然後,主微電腦70自DMA觸發器輸入/輸出埠59輸出DMA要求信號給次微電腦71的DMA觸發器輸入/輸出埠63(圖24的S162及圖26a)。
響應經由DMA觸發器輸入/輸出埠63接收到DMA要求信號(圖25的S172),次微電腦71的DMA控制器65輸出HOLD信號給CPU61a(圖25的S174及圖26b)。響應HOLD信號的接收(圖26b),CPU61a輸出HOLDA信號(圖26),藉此而進入一保持狀態。
然後,響應自CPU61a接收到HOLDA信號(圖25的S176),DMA控制器65經由DMA觸發輸入/輸出埠63輸出HOLDA信號給主微電腦70(圖25的S178)。
響應經由DMA觸發器輸入/輸出埠59接收到HOLDA信號(圖24的S164),主微電腦70限定將被自RAM66讀出的數據在RAM66中的地址,並將其經由雙I/O埠60輸出給次微電腦71(圖24的S166及圖26d)。
響應經由雙I/O埠64接收到地址(圖25的S180及圖26d),次微電腦71的DMA控制器65自RAM66讀出數據(圖26e),且DMA經由總線61b及雙I/O埠64將其傳送給主微電腦70(圖25的S182)。然後,DMA控制器65經由DMA觸發輸入/輸出埠63輸出DMA確認信號給主微電腦70(圖25的S184及圖26f)。
在輸出地址之後(圖24的S166及圖26d),主微電腦70經由雙I/O埠60讀取數據(圖24的S168)。回應於經由DMA觸發器輸入/輸出埠59接收到DMA確認信號(圖29的S170及圖31f),DMA控制器65結束執行程序。
實施例五圖27系描述根據本發明的第一及第四方面的微電腦之結構,及根據本發明第八方面的多微電腦系統的方塊圖。在所描述的多微電腦系統中,包括有CPU72a及存儲器72的主微電腦70,及包括有CPU73a及存儲器73的次微電腦71被連接。次微電腦71可直接存取主微電腦70之存儲器(存儲器裝置)72中的RAM。
圖28系描述顯示於圖27中的多微電腦系統結構之詳細方塊圖。此多微電腦系統包括一主微電腦70,其包含CPU57,DMA設定輸出埠58a,存儲器57a,DMA觸發器輸入/輸出埠59,DMA控制器65,RAM存取準許輸出埠80,及雙I/O埠60,且經由總線57b被連接在一起;及一次微電腦71,其包含CPU61a,DMA設定輸出埠62a,RAM66,DMA觸發器輸入/輸出埠63,RAM存取準許輸入埠81,及雙I/O埠64,且經由總線61b被連接在一起。
DMA控制器65直接接受信號及直接傳送信號至CPU57及DMA觸發器輸入/輸出埠63。
DMA設定輸出埠62a及DMA設定輸入埠58a均為RAM自由模式寄存器,且當它們被設定標誌時,其允許CPU61a直接存取RAM57a。DMA設定輸出埠62a設定標誌給DMA設定輸入埠58a,並重置它。
DMA觸發器輸入/輸出埠59及63在其間相互地接上並傳送信號。雙I/O埠60及64在其間相互地接收並傳送信號。
主微電腦70及次微電腦71的操作下面將參閱顯示主微電腦70之操作的圖29與顯示次微電腦71之DMA控制器65的操作的圖30兩個流程圖,以及其顯示於圖31的時序圖加以說明。
主微電腦70對RAM存取準許輸出埠80設定標誌(圖24的S160)。次微電腦71的RAM存取準許輸入埠81亦被設定標誌(圖29的S186)。
然後,次微電腦71對DMA設定輸出埠62a設定標誌。主微電腦70的DMA設定輸入埠58a亦被設定標誌。次微電腦71自DMA觸發器輸入/輸出埠59輸出DMA要求信號給主微電腦70的DMA觸發器輸入/輸出埠63(圖29的S162及圖31b)。
響應經由DMA觸發器輸入/輸出埠63接收到DMA要求信號(圖30的S172),主微電腦70的DMA控制器65輸出HOLD信號給CPU57(圖30的S174及圖31c)。響應HOLD信號的接收(圖31c)。CPU57輸出HOLDA信號(圖31b),藉此而進入一保持狀態。
然後,響應自CPU57接收到HOLDA信號(圖30的S176),DMA控制器65經由DMA觸發器輸入/輸出埠63輸出HOLDA信號給次微電腦71(圖30的S178)。
響應經由DMA觸發器輸入/輸出埠59接收到HOLDA信號(圖29的S164),次微電腦71限定將被自RAM57a讀出的數據在RAM57a中的地址,並將其經由雙I/O埠64輸出給主微電腦70(圖29的S166及圖31e)。
響應經由雙I/O埠60接收到地址(圖30的S180及圖31e),主微電腦70的DMA控制器65自RAM64讀出數據(圖31f),且DMA經由總線57及雙I/O埠60將其傳送給次微電腦71(圖30的S182)。然後,DMA控制器65經由DMA觸發器輸入/輸出埠63輸出DMA確認信號給次微電腦71(圖30的S184及圖31g)。
在輸出地址之後(圖29的S166及圖31e),次微電腦71經由雙I/O埠64讀取數據(圖29的S168)。響應經由DMA觸發器輸入/輸出埠59接收到DMA確認信號(圖29的S170及圖31g),次微電腦71結束執行程序。
根據本發明之第一至第四方面的微電腦允許地自外部裝置對內部RAM直接存取,特別在模擬時,其允許模擬晶片的微電腦以和執行速度一樣的高速直接存取RAM。
根據本發明第五及第八方面的多微電腦系統無需存儲器IC作為主微電腦及次微電腦之間接口。故主微電腦可以高速存取外部存儲器,而多微電腦系統可以被低成本生產。此外,由於減少了元件數目,所以增強了操作的可靠度。
根據本發明第六方面的模擬方法允許模擬晶片的微電腦可和執行速度一樣快地存取外部存儲器,藉此實現類似於實際操作的除錯環境。
根據本發明第七方面的模擬方法允許模擬晶片的微電腦和執行速度一樣的高速去模擬信號的接收與傳送,藉此實現類似於實際操作的除錯環境。
權利要求
1.一微電腦,包括一CPU一輸入/輸出埠;一存儲器裝置,其具有一RAM;一組總線,連接於該CPU,該輸入/輸出埠及該存儲器裝置,該組總線系包括一控制總線,一地址總線及一數據總線;存儲器裝置,用以存儲一特定數據;及存取裝置,用以在該存儲器裝置存儲該特定數據時,直接存取該RAM。
2.如權利要求1所述的微電腦,其中前述存取裝置包括切換裝置,當第二存儲器裝置存儲所需的數據時,用以分別將輸入/輸出埠的連接由數據總線切換至控制總線,藉以自外部輸入一用以使前述CPU進入保持狀態的指令信號,並且自外部輸入一讀/寫準許信號;至地址總線,藉以自外部輸入一地址信號給存儲器裝置的RAM;及至部分的數據總線,藉以對存儲器裝置的RAM寫入及讀出數據。
3.如權利要求1所述的微電腦,還包括額外的控制總線;額外的地址總線;及額外的數據總線;其中前述存取裝置包括切換裝置,在前述存儲器裝置存儲前述特定數據時,用以自前述數據總線分別切換前述輸入/輸出埠的連接,至額外的地址總線,藉以自外部輸入一地址給存儲器裝置的RAM;至額外的數據總線,藉以對存儲器裝置的RAM寫入及讀出數據;且至額外的控制總線,藉以自外部輸入一讀/寫準許信號。
4.如權利要求1所述的微電腦,其中前述存取裝置包括DMA控制裝置,用以在存儲器裝置存儲一特定數據時,自外部直接存取RAM。
5.一多微電腦系統,包括一主微電腦,其運作如系統的主要部分;及至少一次微電腦,其在該主微電腦的控制下為可操作;及其中前述主微電腦及/或次微電腦包括CPU;輸入/輸出埠;具有RAM的存儲器裝置;控制總線,地址總線及數據總線,用以使前述CPU,輸入/輸出埠及存儲器裝置相互連接;存儲器裝置,用以存儲特定的數據;及存取裝置,用以在前述存儲器裝置存儲前述特定的數據時,可自外部直接存取前述RAM;及前述主微電腦(或次微電腦)可直接存取前述次微電腦(或主微電腦)的RAM。
6.如權利要求5所述的多微電腦系統,其中,前述存取裝置包括切換裝置,用以在前述存儲器裝置存儲前述特定的數據時,將前述輸入/輸出埠的連接由所述數據總線分別切換至前述控制總線,用以自外部輸入指示信號,以使前述CPU為保持狀態,並且自外部輸入讀/寫準許信號;至前述地址總線,用以輸入來自外部的前述RAM之地址信號;及至部分的數據總線,以將數據寫入至前述RAM,及將數據自前述RAM中讀出。
7.如權利要求5所述的多微電腦系統,其中,前述主微電腦及/或次微電腦還包括額外的控制總線;額外的地址總線;及額外的數據總線;且前述存取裝置包括切換裝置,在前述存儲器裝置存儲前述特定數據時,用以自前述數據總線分別切換前述輸入/輸出埠的連接至額外的地址總線,藉以自外部輸入一地址給存儲器裝置的RAM;至額外的數據總線,藉以對存儲器裝置的RAM寫入及讀出數據;且至額外的控制總線,藉以自外部輸入一讀/寫準許信號。
8.如權利要求5所述的多微電腦系統,其中,前述存取裝置包括DMA控制裝置,用以在存儲器裝置存儲一特定數據時,自外部直接存取RAM。
9.一種用以開發微電腦之軟體的模擬方法,包括下列步驟除了模擬對象的第一微電腦外,準備至少一第二微電腦,其包括CPU;輸入/輸出埠;具有RAM的存儲器裝置;控制總線,地址總線及數據總線,用以使前述CPU,輸入/輸出埠及存儲器裝置相互連接;存儲器裝置,用以存儲特定的數據;及存取裝置,用以在前述存儲器裝置存儲前述特定的數據時,可自外部直接存取前述RAM;及利用前述存取裝置自前述第一微電腦直接存取前述第二微電腦的前述RAM,並模擬前述第一微電腦的實際操作來開發軟體。
10.如權利要求9所述的模擬方法,其中前述第二微電腦的前述存取裝置包括切換裝置,用以在前述存儲器裝置存儲前述特定的數據時,分別將前述輸入/輸出埠的連接自前述數據總線切換至前述控制總線,用以自外部輸入指示信號,以使前述CPU為保持狀態,並且自外部輸入讀/寫準許信號;至前述地址總線,用以輸入來自外部的前述RAM之地址信號;及至部分的數據總線,以將數據寫入至前述RAM,及將數據自前述RAM中讀出。
11.如權利要求8所述的模擬方法,其中前述第二微電腦還包括額外的控制總線;額外的地址總線;及額外的數據總線;且前述存取裝置包括切換裝置,在前述存儲器裝置存儲器前述特定數據時,用以由前述數據總線分別切換前述輸入/輸出埠的連接至額外的地址總線,藉以自外部輸入一地址給存儲器裝置的RAM;至額外的數據總線,藉以對存儲器裝置的RAM寫入及讀出數據;且至額外的控制總線,藉以自外部輸入一讀/寫準許信號。
12.如權利要求9所述的模擬方法,其中前述第二微電腦的前述存取裝置包括DMA控制裝置,用以在存儲器裝置存儲一特定數據時,自外部直接存取RAM。
13.如權利要求12所述的模擬方法,其中,前述第二微電腦的RAM成為接收與傳送信號的目標,以模擬由前述第一微電腦進行的信號傳送與接收。
全文摘要
一微電腦,包括CPU42,輸入/輸出埠44,具有RAM43的存儲器裝置,其利用控制總線46b,地址總線46c及數據總線46a加以連接,及存取裝置44,44b,46a,46b,46c,用以在存儲器裝置44a存儲數據時,可自外部直接存取RAM43,藉以可自外部直接存取內部的RAM。
文檔編號G06F15/78GK1166654SQ9710221
公開日1997年12月3日 申請日期1997年1月10日 優先權日1996年5月28日
發明者松井秀夫, 北口裕次, 西內泰樹 申請人:三菱電機株式會社, 三菱電氣工程株式會社