国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      改進(jìn)計(jì)時(shí)器性能的集成電路輸入/輸出處理器的制作方法

      文檔序號(hào):6410791閱讀:761來源:國(guó)知局
      專利名稱:改進(jìn)計(jì)時(shí)器性能的集成電路輸入/輸出處理器的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明一般涉及到輸入/輸出處理器,尤其涉及到具有改進(jìn)計(jì)時(shí)器(timer)性能的輸入/輸出處理器。
      復(fù)雜的實(shí)時(shí)控制系統(tǒng),例如汽車和機(jī)器人控制系統(tǒng),要求數(shù)據(jù)處理系統(tǒng)具有更好的控制,更快的系統(tǒng)響應(yīng)和更多的輸入/輸出(I/O)能力。因此,對(duì)數(shù)據(jù)處理系統(tǒng)能進(jìn)行更多,更快和改進(jìn)輸入/輸出(I/O)處理的要求迅速增長(zhǎng)。
      人們期望微機(jī)能提供更高的數(shù)字和模擬的分解輸出,以求更精確的控制。因?yàn)樘幚淼念~外開支,中央處理單元(CPU)可能不能以所需的速率響應(yīng)甚高頻控制功能。需要有一種解決方案,在不使CPU負(fù)擔(dān)過重的前提下提供更多,更快和改進(jìn)的輸入/輸出處理能力。
      另外,人們期望微機(jī)可以非常靈活地適合各種不同應(yīng)用。在以前的微機(jī)中,I/O處理的靈活性由中央處理單元(CPU)軟件對(duì)端口或簡(jiǎn)單的計(jì)時(shí)器通道操作來提供。模擬和數(shù)字I/O也都通過CPU連接。然而,因?yàn)镃PU涉及所有的I/O,I/O帶寬主要浪費(fèi)在系統(tǒng)的額外開支上了。這樣,需要有一種解決方案同時(shí)提供靈活性和增進(jìn)的I/O性能。


      圖1以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的數(shù)據(jù)處理系統(tǒng)10;圖2以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖1中電路25的一部分;圖3以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖1中電路26的一部分;圖4以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖1中電路25的一部分;圖5以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖1中電路25的一部分;圖6以列表的形式示出了一張真值表,圖5中管腳控制電路64使用該表判定結(jié)果導(dǎo)線168的邏輯電平;
      圖7以列表的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖5中控制寄存器166的一部分和控制寄存器167的一部分;圖8以列表的形式示出了用戶可以通過圖7中管腳輸出激勵(lì)控制比特182或183編程實(shí)現(xiàn)的一組功能;圖9以列表的形式示出了在圖5中管腳165通過匹配通道160和161狀態(tài)的邏輯與和邏輯或所產(chǎn)生的結(jié)果示例;圖10以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖1中電路26和27的一部分;圖11以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖10中控制寄存器226的一部分;圖12以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖10中電路26的一部分;圖13以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中電路61,62,80,81和86中每個(gè)通道的一部分;圖14以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中電路25的一部分;圖15以列表的形式示出了用戶如何在計(jì)時(shí)器總線的不同時(shí)隙中選擇性地提供一個(gè)或多個(gè)時(shí)基值的8個(gè)例子;圖16以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的一種計(jì)時(shí)器系統(tǒng)集成電路280;圖17以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的一種數(shù)據(jù)處理系統(tǒng)315;圖18以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖16中主時(shí)基通道285的一部分和輔時(shí)基通道288的一部分;圖19以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖17中主時(shí)基通道304的一部分和輔時(shí)基通道310的一部分;圖20以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖1中電路25的一部分;圖21以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖20中捕獲通道401的一部分;
      圖22以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖20中捕獲通道401的一部分;圖23以列表的形式示出了置位和清零每一個(gè)通道的DVB比特(如圖22中425)的行為,當(dāng)該比特被配置到它的每一個(gè)操作模式時(shí),可支持?jǐn)?shù)據(jù)傳送操作;圖24以列表的形式示出了進(jìn)行數(shù)據(jù)傳送操作的每一個(gè)通道的由數(shù)據(jù)傳送控制比特(DTC)(例如圖21和22中的423-424)控制的數(shù)據(jù)傳送操作模式;圖25以分時(shí)圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的執(zhí)行周期累積測(cè)量的改進(jìn)方法,其累積誤差比現(xiàn)有技術(shù)的實(shí)現(xiàn)方法要少;圖26以分時(shí)圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的執(zhí)行周期累積測(cè)量的改進(jìn)方法;圖27以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中計(jì)數(shù)通道58的一部分;圖28以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器67的第一部分;圖29以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器67的第二部分;圖30以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器67的第三部分;圖31以分時(shí)圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的執(zhí)行周期累積測(cè)量的改進(jìn)方法;圖32以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中計(jì)數(shù)通道58的一部分;圖33以分時(shí)圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的捕獲時(shí)基值的改進(jìn)方法;圖34以分時(shí)圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的捕獲時(shí)基值的改進(jìn)方法;圖35以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器66的第一部分;
      圖36以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器66的第二部分;圖37以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中捕獲通道55的一部分;圖38以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器65的第一部分;圖39以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中寄存器65的第二部分;圖40以框圖的形式示出了根據(jù)本發(fā)明的一實(shí)施例的圖2中匹配通道57的一部分;術(shù)語“總線”是指?jìng)魉鸵粋€(gè)或多個(gè)不同類型信息,如數(shù)據(jù),地址,控制或狀態(tài)信息的多個(gè)信號(hào)或?qū)Ь€。術(shù)語“取正”和“取負(fù)”各自指將信號(hào),狀態(tài)比特,集成電路管腳或類似設(shè)備再生成它的邏輯真或邏輯假狀態(tài)。如果邏輯真狀態(tài)是邏輯電平1,邏輯假狀態(tài)則是邏輯電平0。如果邏輯真狀態(tài)是邏輯電平0,邏輯假狀態(tài)則是邏輯電平1。
      術(shù)語“置位”是指將信號(hào),狀態(tài)比特,集成電路管腳或類似設(shè)備再生成它的邏輯電平1。術(shù)語“清零”是指將信號(hào),狀態(tài)比特,集成電路管腳或類似設(shè)備再生成它的邏輯電平0。術(shù)語“翻轉(zhuǎn)”是指如果信號(hào),狀態(tài)比特,集成電路管腳或類似設(shè)備的目前狀態(tài)是邏輯電平1,則再生成邏輯電平0。如果目前狀態(tài)是邏輯電平0,則再生成邏輯電平1。
      符號(hào)“%”前綴一個(gè)數(shù)字說明該數(shù)字以二進(jìn)制形式表示,符號(hào)“$”前綴一個(gè)數(shù)字說明該數(shù)字以十六進(jìn)制形式表示。術(shù)語“集成電路管腳”和“管腳”可相互替代使用。另外,使用術(shù)語“集成電路管腳”和“管腳”處,也可以替換以結(jié)合區(qū)或任何在集成電路和外部設(shè)備間提供電氣耦合的導(dǎo)線。
      在以下描述中提出了許多具體的細(xì)節(jié),如特定字和字節(jié)的長(zhǎng)度等等以提供對(duì)本發(fā)明的徹底理解。然而,本領(lǐng)域的技術(shù)人員顯然知道本發(fā)明可以在沒有這些具體細(xì)節(jié)的情況下得到實(shí)施。在其他例子中,本發(fā)明采取電路框圖的形式以避免不必要的細(xì)節(jié)。在絕大多數(shù)情況下,涉及定時(shí)考慮和類似情況的細(xì)節(jié),因?yàn)椴挥绊憣?duì)本發(fā)明的完整理解,而且是相關(guān)領(lǐng)域中一般技術(shù)人員所熟悉的,因而被忽略。
      盡管在本文件中通篇使用術(shù)語“集成電路管腳”和“管腳”(如圖1中31-35和19),這些術(shù)語應(yīng)該包括用于向某個(gè)集成電路傳輸電氣信號(hào),或接收電氣信號(hào)的任何類型設(shè)備,例如,集成電路結(jié)合區(qū),焊接塊,導(dǎo)線等等。
      現(xiàn)在參看圖形,其中描述的元件不一定顯示定標(biāo),并且相似元件在幾張圖中用同一個(gè)參數(shù)標(biāo)出。
      輸入/輸出控制模塊(參看圖1中IOCM 25-29)提供了數(shù)據(jù)處理系統(tǒng)的靈活性和增進(jìn)的I/O性能。在本發(fā)明的一實(shí)施例中,一個(gè)或多個(gè)IOCM25-29分布在與中央處理單元(CPU)13不同的集成電路中,但是一個(gè)或多個(gè)IOCM 25-29通過總線30與CPU 13通信。在本發(fā)明的可選實(shí)施例中,一個(gè)或多個(gè)IOCM可以與CPU處在同一個(gè)集成電路中。例如,參看圖1,其它電路15可能作為輸入/輸出控制模塊(IOCM)來實(shí)現(xiàn),通過總線17與CPU13通信。
      IOCM 25-29的每一個(gè)設(shè)計(jì)成一個(gè)很模塊化的系統(tǒng)結(jié)構(gòu)。在最高層,IOCM 25-29的每一個(gè)是一個(gè)通過內(nèi)部模塊總線24與其它模塊通信的模塊。例如,在一實(shí)施例中,IOCM 25-29的每一個(gè)可以是一個(gè)用于MC68HC300族微機(jī)的模塊,該類微機(jī)由Texas的Motorola Austin公司生產(chǎn)。
      除了本身是一個(gè)模塊,IOCM 25-29的每一個(gè)也由多個(gè)子模塊或模塊化I/O通道構(gòu)成。通過任意組合“硅通道庫(kù)”中的模塊化通道,可以很容易地創(chuàng)建不同的IOCM版本。通道可以有不同的硬件,包括數(shù)據(jù)和模擬I/O電容,以完成特定操作。可以通過將新通道加入到庫(kù)中的方式增加未預(yù)料的I/O功能。這樣,合并不同的模塊化通道布局就可以生成IOCM 25-29的不同版本。
      IOCM 25-29的另一個(gè)重要性能是它們的結(jié)構(gòu)允許用戶在軟件和硬件之間區(qū)分任務(wù)。通道可以編程在硬件中共同運(yùn)行以完成簡(jiǎn)單的高頻功能。功能運(yùn)行的通道實(shí)際上充當(dāng)高頻I/O事件的預(yù)處理器。通過減輕CPU對(duì)所有I/O事件的軟件服務(wù),或僅要求CPU執(zhí)行低頻I/O事件的軟件服務(wù),實(shí)際上提供了更好的控制和更快的系統(tǒng)響應(yīng)。
      每一個(gè)IOCM 25-29的數(shù)字處理部分在所能執(zhí)行的I/O功能的數(shù)量和性能上都是靈活的。因?yàn)樵诠苣_,通道和總線的數(shù)量上是模塊化的,每一個(gè)IOCM 25-29都能實(shí)現(xiàn)這種靈活性。也就是說,不同IOCM版本可以從“硅通道庫(kù)”中很容易地創(chuàng)建,集成電路管腳也可以增加,而與通道數(shù)量無關(guān)。當(dāng)通道數(shù)量在不同IOCM版本中有所增加時(shí),IOCM 25-29的這種結(jié)構(gòu)也支持增加更多的數(shù)據(jù)和控制總線。可以設(shè)計(jì)新通道并加入到庫(kù)中,以為將來的I/O功能提供一種增長(zhǎng)方式。
      IOCM 25-29系統(tǒng)結(jié)構(gòu)的第二個(gè)重要方面是,通道可以編程,在硬件中共同運(yùn)行,以實(shí)現(xiàn)簡(jiǎn)單的高頻功能。在通過減少系統(tǒng)CPU中斷數(shù)量而最大化系統(tǒng)輸出時(shí),允許用戶在硬件和軟件之間區(qū)分任務(wù)是重要的。
      涉及同類型計(jì)時(shí)器功能的復(fù)雜實(shí)時(shí)控制系統(tǒng)需要大量的I/O處理。這樣,相對(duì)小的通道庫(kù)可以以不同的方式合并,組成多個(gè)IOCM 25-29以解決大多數(shù)用戶的需求。
      在本發(fā)明的一實(shí)施例中,通道庫(kù)包括多個(gè)不同類別或類型的通道,即“工作通道”,“時(shí)基通道”和“其它通道”。這種類別命名將類似功能或結(jié)構(gòu)的通道劃分在一起?!肮ぷ魍ǖ馈卑▓?zhí)行典型計(jì)時(shí)器功能的通道,如當(dāng)時(shí)間事件發(fā)生時(shí)捕獲一個(gè)輸入值,當(dāng)匹配事件發(fā)生時(shí),提供一個(gè)信號(hào)和統(tǒng)計(jì)。工作通道也包括由基本計(jì)時(shí)器功能組成的更復(fù)雜的通道。例如,執(zhí)行匹配和計(jì)數(shù)功能的通道可以統(tǒng)計(jì)匹配事件的數(shù)量,并僅在匹配事件數(shù)量達(dá)到某個(gè)預(yù)定值時(shí)提供一個(gè)信號(hào)。
      在本發(fā)明的一實(shí)施例中,工作通道包括(1)捕獲通道(CC);(2)匹配通道(MC);(3)計(jì)數(shù)通道(CMTC);(4)火花集成通道(SIC),執(zhí)行多個(gè)計(jì)時(shí)器功能以提供發(fā)動(dòng)機(jī)的火花定時(shí);(5)燃料集成通道(FIC),執(zhí)行多個(gè)計(jì)時(shí)器功能以提供發(fā)動(dòng)機(jī)的燃料注入定時(shí);(6)雙向FIFO通道(DFC),提供一個(gè)存儲(chǔ)數(shù)據(jù)值的2-深度FIFO。注意雙向FIFO通道(DFC)不執(zhí)行計(jì)時(shí)器功能,而代以提供數(shù)據(jù)存儲(chǔ)功能。
      在本發(fā)明的一實(shí)施例中,時(shí)基通道包括(1)計(jì)時(shí)器總線控制通道(TBCC),提供計(jì)時(shí)器總線的主控制或輔控制;(2)度數(shù)時(shí)鐘通道(DC),可提供多達(dá)四個(gè)時(shí)基;(3)計(jì)時(shí)器通道(TC),提供產(chǎn)生于內(nèi)部或外部的時(shí)基;注意在本發(fā)明的一實(shí)施例中,計(jì)時(shí)器通道可以由一個(gè)或多個(gè)工作通道或一個(gè)或多個(gè)外部信號(hào)控制(如定時(shí),加載某一模塊化值,或由統(tǒng)計(jì)決定方向性)。
      在本發(fā)明的一實(shí)施例中,其它通道包括(1)執(zhí)行同步序列轉(zhuǎn)換的同步序列通道;(2)執(zhí)行同步序列轉(zhuǎn)換的異步序列通道;(3)管腳控制通道(PCC),負(fù)責(zé)工作通道與集成電路管腳的接口;(4)輔助外部總線接口通道(SEBI),負(fù)責(zé)內(nèi)部模塊間總線與該集成電路外部的總線之間的接口;(5)全局資源通道(GRC),包括不同版本間可能不同的客戶化電路或指定電路(如特定計(jì)時(shí)器和一些系統(tǒng)保護(hù)特性);(6)輔助總線接口通道(SBIU),用于與內(nèi)部模塊間總線接口;(7)主總線接口通道(MBIU),用于內(nèi)部模塊間總線(IMB)與度數(shù)計(jì)時(shí)器的接口(在CPU故障的情況下,所有的CPU寫被限制只能寫向一個(gè)預(yù)定的寄存器,在沒有CPU的情況下,MBIU允許度數(shù)計(jì)時(shí)器接管IMB,并重新配置特定通道以運(yùn)行系統(tǒng),如汽車發(fā)動(dòng)機(jī));(8)測(cè)試通道,包括用于測(cè)試目的的電路。
      注意在本發(fā)明的一實(shí)施例中,序列通道可以直接控制一個(gè)或多個(gè)相應(yīng)集成電路管腳,也可以通過管腳控制通道使用相應(yīng)集成電路管腳。
      在本發(fā)明的一實(shí)施例中,可能存在其它不嚴(yán)格是通道庫(kù)一部分的附加電路,但是這些電路以模塊化的方式設(shè)計(jì),可用以耦合一個(gè)或多個(gè)通道。例如,管腳控制共享邏輯可以耦合兩個(gè)相鄰管腳控制(PCC),允許兩個(gè)相鄰PCC共享總線信息。在本發(fā)明的可選實(shí)施例中,所有這種連接電路都可以作為通道庫(kù)的一部分。
      每一個(gè)工作通道提供許多可編程的屬性,包括輸入和輸出事件。輸入事件源可以是集成電路管腳或其它工作通道,而輸出事件可以影響集成電路管腳和其它工作通道。通道操作,如輸入捕獲和相鄰工作通道間的數(shù)據(jù)傳輸,可以由輸入事件控制。相反地,工作通道的輸出事件或集成電路管腳,可以影響工作通道的操作和工作通道間的數(shù)據(jù)傳輸。每一個(gè)工作通道的另一特性是可選的組態(tài)模式,該模式定義對(duì)輸入事件或?qū)е螺敵鍪录牟僮魉鑸?zhí)行的工作通道操作。這些特性和其它特性使工作通道可以編程共同運(yùn)行,完成許多I/O功能。
      通道庫(kù)中的通道可以以不同方式添加,以創(chuàng)建IOCM 25-29的不同版本。在本發(fā)明的可選實(shí)施例中,可以有更多,更少或不同的通道庫(kù)中的通道用于形成IOCM 25-29。通過使用模塊化體系結(jié)構(gòu)和靈活的模塊化通道庫(kù),用戶的許多I/O需求可以以一種迅速,有效的方式解決。
      圖1示出了數(shù)據(jù)處理系統(tǒng)10。數(shù)據(jù)處理系統(tǒng)10有一個(gè)CPU集成電路12和輸入/輸出(I/O)集成電路22。CPU集成電路12包括一個(gè)中央處理單元(CPU)13,系統(tǒng)集成模塊14和其它電路15,都通過總線17雙向耦合。系統(tǒng)集成模塊14包括與總線30雙向耦合的外部總線模塊接口電路16。其它電路15包括總線接口電路18。其它電路15可以通過集成電路管腳19與CPU集成電路12外部耦合。
      I/O集成電路22包括電路25-29和外部接口電路23,都通過總線24雙向耦合。外部總線接口電路23雙向耦合到總線30,向CPU集成電路12傳送信息或從CPU集成電路12接收信息。I/O控制模塊電路25-29通過集成電路管腳31-35與I/O集成電路22外部耦合。在本發(fā)明的可選實(shí)施例中,圖1中的塊31-35代表集成電路結(jié)合區(qū)而不是集成電路管腳。模塊25-29的每一個(gè)包括一個(gè)或多個(gè)通道庫(kù)中的通道(參看圖2中的示例)。模塊25-29的每一個(gè)也包括輔助總線接口通道(SBIU)36-40,用于實(shí)現(xiàn)一個(gè)或多個(gè)通道與內(nèi)部模塊間總線24的接口。
      在本發(fā)明的可選實(shí)施例中,可能有一個(gè)或多個(gè)模塊25-29。因?yàn)槟K25-29內(nèi)部總線負(fù)載的限制,將通道劃分成一個(gè)或多個(gè)模塊25-29,每一個(gè)模塊擁有自己的總線接口36-40。每一個(gè)模塊25-29中通道的數(shù)量由每一個(gè)模塊25-29的內(nèi)部總線的最終負(fù)載決定。體系結(jié)構(gòu)的模塊化允許每一個(gè)模塊25-29可以由通道庫(kù)中不同通道組成。這樣,每一個(gè)模塊25-29可以客戶化以滿足不同用戶的需要。
      模塊化通道體系結(jié)構(gòu)特性除了使用模塊化通道庫(kù)之外,本發(fā)明也采用模塊化方式實(shí)現(xiàn)通道總線,用以在不同的通道間傳送信息。因?yàn)镮OCM不同版本的通道布局不同,通道總線結(jié)構(gòu)必須靈活。
      參看圖1和2,在本發(fā)明的一實(shí)施例中,IOCM(如IOCM 25)中的通道通過通道總線通信。下述通道總線可以在IOCM中實(shí)現(xiàn)通道的橫向通信(1)模塊間總線(IMB)24的地址和數(shù)據(jù)導(dǎo)線;(2)一個(gè)或多個(gè)計(jì)時(shí)器總線;(3)一個(gè)或多個(gè)管腳/狀態(tài)總線。通道也可以在兩兩之間建立互聯(lián)通路以進(jìn)行相鄰?fù)ǖ赖臄?shù)據(jù)流動(dòng)。模塊間總線24中的地址和數(shù)據(jù)導(dǎo)線提供了存取通道寄存器,控制寄存器和狀態(tài)寄存器的方式。在本發(fā)明的一實(shí)施例中,總線接口電路36-40(參看圖1)執(zhí)行全局地址譯碼以判定特定IOCM25-29是否被編址。然而,所有的本地地址譯碼都在每一個(gè)通道內(nèi)完成。
      計(jì)時(shí)器總線結(jié)構(gòu)參看圖2,本發(fā)明使用一個(gè)或多個(gè)計(jì)時(shí)器總線71-72,可以簡(jiǎn)單地通過主計(jì)時(shí)器總線控制通道和輔計(jì)時(shí)器總線控制通道(TBCC)61-64將這些計(jì)時(shí)器總線劃分成多個(gè)段,以增加可以向其它通道廣播的時(shí)基的數(shù)量。
      IOCM 25-29的體系結(jié)構(gòu)和總線結(jié)構(gòu)提供了沿計(jì)時(shí)器總線方向?qū)⒂?jì)時(shí)器總線簡(jiǎn)單地劃分成段的方法。其結(jié)果是,每一根計(jì)時(shí)器總線將通道劃分成不同的通道塊,通道塊通過它們各自的計(jì)時(shí)器總線存取不同時(shí)基。因?yàn)橛?jì)時(shí)器總線塊內(nèi)的每一個(gè)通道能夠從計(jì)時(shí)器總線接收相同的時(shí)基值,所以一個(gè)計(jì)時(shí)器總線塊內(nèi)的通道可以執(zhí)行不同的功能而不損失分解率。
      作為例子,參看圖2,注意計(jì)時(shí)器總線71對(duì)應(yīng)于通道塊中標(biāo)以工作和其它通道86的通道塊,計(jì)時(shí)器總線72對(duì)應(yīng)于通道塊中標(biāo)以工作和其它通道87的通道塊。計(jì)時(shí)器總線71用于向工作和其它通道86傳送時(shí)基值,同樣,計(jì)時(shí)器總線72用于向工作和其它通道87傳送時(shí)基值。
      注意每一個(gè)計(jì)時(shí)器總線71-72的一端由一個(gè)主計(jì)時(shí)器控制通道(TBCC)標(biāo)出,計(jì)時(shí)器總線的另一端由一個(gè)輔計(jì)時(shí)器控制通道(TBCC)標(biāo)出。例如,計(jì)時(shí)器總線71的一端由主計(jì)時(shí)器控制通道(TBCC)61標(biāo)出,計(jì)時(shí)器總線71的另一端由輔計(jì)時(shí)器控制通道(TBCC)62標(biāo)出。同樣,計(jì)時(shí)器總線72的一端由主計(jì)時(shí)器控制通道(TBCC)63標(biāo)出,計(jì)時(shí)器總線72的另一端由輔計(jì)時(shí)器控制通道(TBCC)64標(biāo)出。主計(jì)時(shí)器控制通道輔計(jì)時(shí)器控制通道用于標(biāo)明計(jì)時(shí)器總線的每一部分或每一段。
      參看圖2,認(rèn)識(shí)到計(jì)時(shí)器總線71和計(jì)時(shí)器總線72必須使用不同的導(dǎo)線是重要的,因?yàn)樗鼈儽仨毮芡瑫r(shí)傳送不同的時(shí)基值。然而,計(jì)時(shí)器總線71和計(jì)時(shí)器總線72從概念上可以視為獨(dú)立總線,或者也可以從概念上看成是同一個(gè)全局計(jì)時(shí)器總線的不同部分或段。在這個(gè)意義上,全局計(jì)時(shí)器總線是指向IC22的所有必須的工作和其它通道傳送所有要求的時(shí)基值的總線。關(guān)鍵是對(duì)每一組必須同時(shí)傳送的時(shí)基值,必須使用不同的計(jì)時(shí)器總線導(dǎo)線。這些不同的導(dǎo)線可以被認(rèn)為是獨(dú)立總線,或者被認(rèn)為是一根全局總線的不同部分或段。
      在本發(fā)明的一些實(shí)施例中,主計(jì)時(shí)器控制通道(TBCC)可以單獨(dú)控制計(jì)時(shí)器總線。輔計(jì)時(shí)器控制通道(TBCC)僅在時(shí)基通道塊所提供的時(shí)基值需要在兩根計(jì)時(shí)器總線上共享時(shí)才需要。另外,主TBCC也可以替代輔TBCC以允許兩根計(jì)時(shí)器總線的時(shí)基值共享。例如,參看圖2,如果計(jì)時(shí)器總線72僅需要從時(shí)基通道81來的時(shí)基值,可以不需要輔TBCC 64。輔TBCC64用以從時(shí)基通道82向計(jì)時(shí)器總線72提供時(shí)基值。輔TBCC 64由主TBCC63控制。
      注意在本發(fā)明的可選實(shí)施例中,每一個(gè)通道塊可以有更少,更多或不同的通道耦合到計(jì)時(shí)器總線。例如,工作和其它通道86和87可以包括更少,更多或不同的通道庫(kù)中的工作通道或其它通道。
      在包含模塊化通道構(gòu)造塊的計(jì)時(shí)器系統(tǒng)中,分段的計(jì)時(shí)器總線結(jié)構(gòu)提供了在沿計(jì)時(shí)器總線方向的任意處向計(jì)時(shí)器系統(tǒng)的不同部分方便地提供多個(gè)和不同時(shí)基的方式,并且不損失分解率。
      例如,在一個(gè)典型的計(jì)時(shí)器系統(tǒng)中,工作和其它通道86可能需要以第一預(yù)定分解率存取特定時(shí)基,工作和其它通道87可能需要存取與通道86相關(guān)聯(lián)的相同時(shí)基中的一些,再加上第二預(yù)定分解率的其它時(shí)基。本發(fā)明將全局計(jì)時(shí)器總線在需要向每一個(gè)IOCM 25-29輸出的地方分段。其結(jié)果是,對(duì)應(yīng)于每一個(gè)單個(gè)計(jì)時(shí)器總線的通道(如71和72)接收它們需要的時(shí)基以執(zhí)行要求的功能,并且不損失分解率。
      也是在需要可能非常長(zhǎng)的計(jì)時(shí)器總線的計(jì)時(shí)器系統(tǒng)中,因?yàn)樾枰С执罅康墓δ?,本發(fā)明提供了將計(jì)時(shí)器總線分段的方式,以保證計(jì)時(shí)器總線的每一部分具有足夠的驅(qū)動(dòng)能力。
      在本發(fā)明中,計(jì)時(shí)器總線從時(shí)基通道中(如圖2中時(shí)基通道80中的一個(gè))接收一個(gè)時(shí)基值,并向一個(gè)或多個(gè)工作和其它通道(如圖2中工作和其它通道86)提供該時(shí)基值。通過同時(shí)向多個(gè)工作和其它通道提供時(shí)基值,在工作和其它通道之間保持一致。
      在本發(fā)明的一實(shí)施例中,計(jì)時(shí)器總線是一個(gè)時(shí)分多路復(fù)用總線,允許多達(dá)8個(gè)時(shí)基通道提供多達(dá)8個(gè)不同時(shí)基值,在同一個(gè)計(jì)時(shí)器總線中時(shí)分多路復(fù)用。在本發(fā)明的可選實(shí)施例中,計(jì)時(shí)器總線可能不是時(shí)分多路復(fù)用的,或者時(shí)分多路復(fù)用成不同數(shù)量的時(shí)間段。
      參看圖2,在本發(fā)明的一實(shí)施例中,主計(jì)時(shí)器總線控制通道(TBCC)61選擇時(shí)基通道80和81中哪一個(gè)或哪幾個(gè)可以提供時(shí)基值以驅(qū)動(dòng)計(jì)時(shí)器總線71。如果主TBCC 61選擇時(shí)基通道80中的一個(gè),例如計(jì)時(shí)器通道91,則主TBCC 61以計(jì)時(shí)器通道91所提供的時(shí)基值驅(qū)動(dòng)計(jì)時(shí)器總線71。但如果主TBCC 61選擇時(shí)基通道81中的一個(gè),例如計(jì)時(shí)器通道92,則輔TBCC 62以計(jì)時(shí)器通道92所提供的時(shí)基值驅(qū)動(dòng)計(jì)時(shí)器總線71。這樣,只有主TBCC選擇哪個(gè)計(jì)時(shí)器通道提供時(shí)基值,但是主TBCC和輔TBCC都可以從時(shí)基通道接收時(shí)基值,并以該時(shí)基值驅(qū)動(dòng)計(jì)時(shí)器總線。
      在本發(fā)明的一實(shí)施例中,每一個(gè)主TBCC提供對(duì)相應(yīng)輔TBCC的所有控制。在每一個(gè)主TBCC中的控制寄存器存儲(chǔ)比特(如TBCC 61中的控制寄存器存儲(chǔ)比特68和TBCC 63中的控制寄存器存儲(chǔ)比特69)用于在計(jì)時(shí)器總線的8個(gè)時(shí)分多路復(fù)用窗口的每一個(gè)活躍期間,控制激活某個(gè)時(shí)基選擇信號(hào)。從主TBCC來的時(shí)基選擇信號(hào)用于選擇激活的時(shí)基,通過主TBCC(從時(shí)基通道80)或輔TBCC(從時(shí)基通道81)選通到相應(yīng)的時(shí)分多路復(fù)用計(jì)時(shí)器總線71。
      參看圖2,擇信號(hào)50必須從主TBCC 61延伸到與主TBCC 61相關(guān)的時(shí)基通道80,并從主TBCC 61跨越工作和其它通道86到輔TBCC 62和它的相關(guān)時(shí)基通道81。除此之外,時(shí)基選擇信號(hào)50還被工作和其它通道86用于判斷哪個(gè)時(shí)基在計(jì)時(shí)器總線上是物理活躍的,以確定何時(shí)執(zhí)行諸如匹配和捕獲的特定操作。這樣,時(shí)基選擇信號(hào)50有效地從主TBCC 61向工作和其它通道86和時(shí)基通道80,時(shí)基通道81傳送了一個(gè)標(biāo)識(shí)值。該標(biāo)識(shí)值由時(shí)基選擇信號(hào)50傳送,以指示在計(jì)時(shí)器總線71上哪個(gè)時(shí)基目前可用。
      注意,在本發(fā)明的一實(shí)施例中,圖2中示出的每一個(gè)信道有一個(gè)或多個(gè)用戶可編程通道控制寄存器260(參看圖13)。不同類型的通道可以有一些相同的寄存器。參看圖2和圖13,在本發(fā)明的一實(shí)施例中,每一個(gè)80,81和86中的通道以及每一個(gè)通道61和62都有一個(gè)或多個(gè)如圖13所示的耦合的通道寄存器260。
      參看圖13,通道控制寄存器260的一部分264存儲(chǔ)用戶編程標(biāo)識(shí)值,該值可選擇進(jìn)行編碼或不編碼。如果標(biāo)識(shí)值進(jìn)行編碼,該編碼標(biāo)識(shí)值提供給譯碼電路261,該電路在輸出上提供一個(gè)譯碼標(biāo)識(shí)值。該譯碼標(biāo)識(shí)值隨后與時(shí)基選擇信號(hào)50提供的標(biāo)識(shí)值比較。如果該標(biāo)識(shí)值匹配時(shí)基選擇信號(hào)50上驅(qū)動(dòng)的標(biāo)識(shí)值,則匹配信號(hào)263被取正以向該通道指示該通道或者向計(jì)時(shí)器總線提供一個(gè)時(shí)基值(對(duì)時(shí)基通道而言),或者從計(jì)時(shí)器總線接收時(shí)基值(對(duì)工作和其它通道而言)。
      在本發(fā)明的可選實(shí)施例中,該標(biāo)識(shí)值存儲(chǔ)在通道控制寄存器260的264部分,未進(jìn)行編碼。其結(jié)果是不再需要譯碼器261。取代的是,264部分直接作為多路復(fù)用器(MUX)電路262的輸入。264部分控制MUX電路的輸入,選擇時(shí)基選擇信號(hào)50中的一個(gè),在輸出時(shí)提供如匹配信號(hào)263。
      本發(fā)明的計(jì)時(shí)器總線結(jié)構(gòu)支持下述功能。首先,計(jì)時(shí)器總線結(jié)構(gòu)允許沿其長(zhǎng)度方向的任意處分段。其次,允許一對(duì)計(jì)時(shí)器總線控制通道(TBCC),即主TBCC和輔TBCC,控制計(jì)時(shí)器總線的分段。第三,允許相同時(shí)基通道(例如圖2中的時(shí)基通道81)同時(shí)向兩個(gè)不同計(jì)時(shí)器總線段(如計(jì)時(shí)器總線71和72)提供相同時(shí)基通道。
      第四,本發(fā)明的計(jì)時(shí)器總線結(jié)構(gòu)允許每一個(gè)計(jì)時(shí)器總線劃分成N個(gè)時(shí)分多路分時(shí)窗口。第五,計(jì)時(shí)器總線結(jié)構(gòu)支持用戶編程選擇M個(gè)時(shí)基值中的任意一個(gè),在每一個(gè)計(jì)時(shí)器總線段中的N個(gè)分時(shí)窗口中的每一個(gè)中驅(qū)動(dòng)。例如,圖2中時(shí)基通道81可以包括不同數(shù)量的時(shí)基通道(例如計(jì)時(shí)器通道92和計(jì)時(shí)器通道95)。每一個(gè)時(shí)基通道可以向計(jì)時(shí)器總線71,計(jì)時(shí)器總線72或同時(shí)向計(jì)時(shí)器總線71和72提供一個(gè)或多個(gè)時(shí)基值。數(shù)字M和N是正整數(shù)。
      作為例子,參看圖2,在本發(fā)明的一實(shí)施例中,時(shí)基通道81可以提供5個(gè)時(shí)基值(也就是M=5),其中計(jì)時(shí)器通道92提供2個(gè)時(shí)基值“A”和“B”,計(jì)時(shí)器通道95提供3個(gè)時(shí)基值“C”,“D”和“E”;計(jì)時(shí)器總線71和計(jì)時(shí)器總線72可以每一個(gè)都時(shí)分復(fù)用成8個(gè)分時(shí)窗口(也就是N=8)。計(jì)時(shí)器總線71的8個(gè)時(shí)分窗口可以驅(qū)動(dòng)下列時(shí)基值A(chǔ),D,A,B,A,D,A,C,當(dāng)然在計(jì)時(shí)器總線71的下一組8個(gè)分時(shí)窗口中重復(fù)。在另一方面,計(jì)時(shí)器總線72的8個(gè)時(shí)分窗口可以驅(qū)動(dòng)下列時(shí)基值B,D,B,D,B,D,B,D,當(dāng)然在計(jì)時(shí)器總線72的下一組8個(gè)分時(shí)窗口中重復(fù)。在第二和第六個(gè)分時(shí)窗口中,計(jì)時(shí)器總線71和計(jì)時(shí)器總線72驅(qū)動(dòng)同一個(gè)由計(jì)時(shí)器通道95提供的時(shí)基值“D”。
      圖15示出了8個(gè)關(guān)于用戶怎樣在計(jì)時(shí)器總線的不同時(shí)隙間選擇性提供一個(gè)或多個(gè)時(shí)基值(即TB1,TB2,TB3,TB4,TB5,TB6,TB7,TB8)的例子。每一個(gè)時(shí)基通道80提供時(shí)基值TB1-TB8中的一個(gè)。每一個(gè)時(shí)基通道80由用戶編程寄存器存儲(chǔ)電路264(參看圖13)存儲(chǔ)標(biāo)識(shí)值。計(jì)時(shí)器選擇信號(hào)50在每一個(gè)時(shí)隙中驅(qū)動(dòng)一個(gè)標(biāo)識(shí)值,該標(biāo)識(shí)值匹配時(shí)基通道中的編程標(biāo)識(shí)值,時(shí)基通道驅(qū)動(dòng)時(shí)基源總線271(參看圖14),從而以該時(shí)基值(即時(shí)基值TB1-TB8中的一個(gè))驅(qū)動(dòng)了計(jì)時(shí)器總線71。
      注意在本發(fā)明的可選實(shí)施例中,一個(gè)時(shí)基通道針對(duì)每一個(gè)時(shí)基值(TB1-TB8)有一組可編程寄存器存儲(chǔ)比特,該通道可以向計(jì)時(shí)器總線71提供這些比特。每組可編程寄存器存儲(chǔ)比特264可以編程對(duì)存儲(chǔ)比特264執(zhí)行寫操作(如從圖1中的CPU 13)。在本發(fā)明的可選實(shí)施例中,標(biāo)識(shí)存儲(chǔ)比特264可以屏蔽可編程性,這樣它們可以在I/O集成電路22生產(chǎn)期間一次編程成某個(gè)固定值。
      注意除了時(shí)基通道81,時(shí)基通道80也可以由用戶編程,為計(jì)時(shí)器總線71提供一個(gè)或多個(gè)時(shí)基值。同樣,除了時(shí)基通道81,時(shí)基通道82也可以由用戶編程,為計(jì)時(shí)器總線72提供一個(gè)或多個(gè)時(shí)基值。這樣,可供選擇并在計(jì)時(shí)器總線71上驅(qū)動(dòng)的時(shí)基值的總數(shù)量是由時(shí)基通道80和時(shí)基通道81提供的時(shí)基值的總和。同樣,可供選擇并在計(jì)時(shí)器總線72上驅(qū)動(dòng)的時(shí)基值的總數(shù)量是由時(shí)基通道81和時(shí)基通道82提供的時(shí)基值的總和。
      本發(fā)明的計(jì)時(shí)器總線結(jié)構(gòu)還有更多的性能。第六,本發(fā)明的計(jì)時(shí)器總線結(jié)構(gòu)通過主計(jì)時(shí)器總線控制通道和輔計(jì)時(shí)器總線控制通道(如圖2中時(shí)基通道61和時(shí)基通道62)控制多個(gè)時(shí)基值選通到通常的計(jì)時(shí)器總線段(如計(jì)時(shí)器總線71)。時(shí)基選擇信號(hào)50包括在時(shí)基通道80和時(shí)基通道81中的每一個(gè)時(shí)基通道上的一個(gè)選擇信號(hào)。通過在適當(dāng)?shù)姆謺r(shí)窗口期間取正時(shí)基選擇信號(hào)中的某一個(gè),主時(shí)基通道61選擇一個(gè)時(shí)基通道選通到計(jì)時(shí)器總線71。
      第七,本發(fā)明的計(jì)時(shí)器總線結(jié)構(gòu)允許工作和其它通道86監(jiān)控時(shí)基選擇信號(hào)50,以判定時(shí)基通道中的哪一個(gè)目前正向計(jì)時(shí)器總線提供時(shí)基值。其結(jié)果是,工作和其它通道86的每一個(gè)可以決定何時(shí)執(zhí)行它們各自的操作,如匹配或捕獲計(jì)時(shí)器總線71上的被選時(shí)基值。工作和其它通道86在由時(shí)基選擇信號(hào)50決定的適當(dāng)時(shí)侯讀計(jì)時(shí)器總線71,并使用從計(jì)時(shí)器總線71讀來的時(shí)基值執(zhí)行操作。
      時(shí)基通道和時(shí)基同步參看圖2,本發(fā)明使用一個(gè)或多個(gè)時(shí)基通道(如81)以產(chǎn)生時(shí)基值,通過計(jì)時(shí)器總線(如71,72)向工作和其它通道86和87提供。IOCM 25-29的體系結(jié)構(gòu)和總線結(jié)構(gòu)(參看圖1)將每一個(gè)IOCM劃分成不同的工作和其它通道塊(如85-87),這些通道塊可以存取不同時(shí)基通道(如80-81)。因?yàn)槊恳粔K中的每一個(gè)工作和其它通道可以從計(jì)時(shí)器總線中接收相同時(shí)基值,所以在一個(gè)通道塊中的工作和其它通道可以用于執(zhí)行不同功能而并不損失分解率。
      在本發(fā)明的一實(shí)施例中,時(shí)基通道(如80,81)可以包括下列的一個(gè)或多個(gè)(1)計(jì)時(shí)器總線控制通道(TBC),提供計(jì)時(shí)器總線的主控制或輔控制;(2)度數(shù)計(jì)時(shí)器通道(DC),可提供多達(dá)四個(gè)時(shí)基;和(3)計(jì)時(shí)器通道(TC),提供產(chǎn)生于內(nèi)部或外部的時(shí)基。
      參看圖2和圖14,在本發(fā)明的一實(shí)施例中,時(shí)基通道80的每一個(gè)與時(shí)基源總線271耦合。時(shí)基源總線271以與計(jì)時(shí)器總線71相同的方式進(jìn)行時(shí)分復(fù)用。時(shí)基通道80的每一個(gè)比較時(shí)基選擇信號(hào)和存儲(chǔ)在寄存器部分264的用戶編程標(biāo)識(shí)值(參看圖13)。如果匹配,該匹配通道以通道時(shí)基驅(qū)動(dòng)時(shí)基源271。不匹配的通道在這個(gè)特定時(shí)間間隔內(nèi)不驅(qū)動(dòng)時(shí)基源總線271。耦合邏輯270(參看圖14)用于以合適的發(fā)送次數(shù)從時(shí)基源總線271向計(jì)時(shí)器總線71提供下一個(gè)時(shí)基值。
      出于計(jì)時(shí)器總線的驅(qū)動(dòng)能力,在計(jì)時(shí)器總線上的數(shù)據(jù)傳送頻率,不同計(jì)時(shí)器系統(tǒng)物理位置或路由方面的考慮,一個(gè)復(fù)雜的數(shù)據(jù)處理系統(tǒng)(如圖17中的數(shù)據(jù)處理系統(tǒng)315)如果太大,就可能無法在單個(gè)時(shí)基內(nèi)完成其功能。在一些數(shù)據(jù)處理系統(tǒng)中,在數(shù)據(jù)模塊之間劃分計(jì)時(shí)器系統(tǒng)是必要的(參看圖16)。因?yàn)檎麄€(gè)系統(tǒng)的規(guī)模,或者因?yàn)椴煌夹g(shù)的要求,如功率輸出驅(qū)動(dòng),模擬輸入條件和復(fù)雜的數(shù)字電路,在多個(gè)集成電路之間進(jìn)行劃分是必要的。參看圖17,在接口集成電路和功率集成電路現(xiàn)有的打包技術(shù)下,向接口集成電路301或向功率集成電路302分布一個(gè)16比特或32比特時(shí)基值是不可行的。
      參看圖16-19,本發(fā)明僅通過兩個(gè)信號(hào),一個(gè)計(jì)時(shí)器信號(hào)328和一個(gè)同步信號(hào)329,使兩個(gè)或多個(gè)時(shí)基通道(如圖16和圖18中的主時(shí)基通道285和輔時(shí)基通道288)同步或保持同步。計(jì)時(shí)器信號(hào)328和同步信號(hào)329可以在不同集成電路的計(jì)時(shí)器系統(tǒng)間(參看圖17),或在一個(gè)集成電路的不同模塊間(參看圖16)進(jìn)行廣播。主時(shí)基通道產(chǎn)生或接收主計(jì)時(shí)器信號(hào),連接一個(gè)或多個(gè)輔計(jì)時(shí)器信道以保證主時(shí)基通道和輔計(jì)時(shí)器信道同時(shí)以相同的速率增長(zhǎng)或遞減。
      例如,在圖18中,主時(shí)基通道285通過計(jì)數(shù)系統(tǒng)計(jì)時(shí)器信號(hào)327產(chǎn)生一個(gè)主計(jì)時(shí)器信號(hào)328。主時(shí)基通道285隨后將主計(jì)時(shí)器信號(hào)328提供給一個(gè)或多個(gè)輔時(shí)基通道(如288)以保證主時(shí)基通道和輔計(jì)時(shí)器信道同時(shí)以相同的速率增長(zhǎng)或遞減。在圖19示出的本發(fā)明的一個(gè)可選實(shí)施例中,主時(shí)基通道304和輔時(shí)基通道310都接收相同的主計(jì)時(shí)器信號(hào)348,主計(jì)時(shí)器信號(hào)在本發(fā)明的一些實(shí)施例中,是與系統(tǒng)計(jì)時(shí)器327相同的信號(hào)(參看圖18)。然而,主時(shí)基通道304和輔時(shí)基通道310都以相同數(shù)量計(jì)數(shù)主計(jì)時(shí)器信號(hào)348。這樣,時(shí)基遞減計(jì)數(shù)器340和時(shí)基遞減計(jì)數(shù)器341同時(shí)以相同的速率遞減。
      如果數(shù)據(jù)處理系統(tǒng)(如圖17中的315)使用一個(gè)固定頻率的系統(tǒng)計(jì)時(shí)器,并且該系統(tǒng)計(jì)時(shí)器可以作為主時(shí)基通道的輸入和一個(gè)或多個(gè)輔時(shí)基通道的輸入,那么主要在主時(shí)基通道和輔時(shí)基通道的預(yù)定標(biāo)電路326,346和350(參看圖18和圖19)中選擇相同的預(yù)定標(biāo)分值,該系統(tǒng)計(jì)時(shí)器即可用作主計(jì)時(shí)器信號(hào)。這實(shí)際上節(jié)省了必須增加的一根新的主計(jì)時(shí)器信號(hào)互聯(lián)導(dǎo)線。在使用非時(shí)域或不規(guī)則頻率的系統(tǒng)計(jì)時(shí)器信號(hào)的數(shù)據(jù)處理系統(tǒng)中,主時(shí)基通道必須產(chǎn)生主計(jì)時(shí)器信號(hào)。關(guān)鍵在于所有的同步時(shí)基通道(如圖18中的285和288,圖19中的304和310)必須以相同頻率和相位的主計(jì)時(shí)器信號(hào)(如圖18中的328和圖19中的348)定時(shí)。
      然后需要同步信號(hào)(如圖18中的327和圖19中的349)將所有時(shí)基通道(如圖18中的285和288,圖19中的304和310)設(shè)置成相同的初始值,在此基礎(chǔ)上由上述主計(jì)時(shí)器信號(hào)進(jìn)行增量/減量。對(duì)使用自激計(jì)時(shí)器的時(shí)基通道,最方便的同步點(diǎn)是到$0000或$FFFF的翻轉(zhuǎn)點(diǎn),取決于它是一個(gè)遞增計(jì)數(shù)器還是一個(gè)遞減計(jì)數(shù)器(參看圖18)。對(duì)模數(shù)時(shí)基而言,模數(shù)值被裝入計(jì)數(shù)器的點(diǎn)是最方便的同步點(diǎn)(參看圖19)。
      選擇這些同步點(diǎn)是因?yàn)橹鲿r(shí)基通道(如圖18中的285,圖19中的304)已經(jīng)有了所需的用于其它用途的檢測(cè)電路(如圖18中的330,圖19中的351)。另外,在這些被選同步點(diǎn)中的時(shí)基是所有輔時(shí)基通道中已有的或簡(jiǎn)單產(chǎn)生的(如遞減計(jì)數(shù)器的$0000,遞增計(jì)數(shù)器的$FFFF和模數(shù)計(jì)數(shù)器中的模數(shù)值)。主時(shí)基通道用于檢測(cè)同步點(diǎn)的出現(xiàn)以產(chǎn)生同步信號(hào)。同步信號(hào)隨后提供給一個(gè)或多個(gè)輔時(shí)基通道,其中同步信號(hào)用以同時(shí)將所有時(shí)基值重置成相同值。
      一旦在每一個(gè)時(shí)基通道中的計(jì)數(shù)器(圖18中的320和321,圖19中的340和341)已被設(shè)成相同值,并以相同頻率和相位主計(jì)時(shí)器信號(hào)定時(shí),計(jì)數(shù)器應(yīng)該保持所有計(jì)數(shù)值的完全同步。如果一個(gè)時(shí)基值因?yàn)樵胍艋蚱渌绊懚ネ?,在下一個(gè)同步點(diǎn)由同步信號(hào)進(jìn)行重新同步。
      這樣,本發(fā)明允許在不同I/O控制模塊(IOCM)281-284(參看圖16)或不同集成電路300-302(參看圖17)上的時(shí)基通道產(chǎn)生和使用一個(gè)同步化和一致的時(shí)基值。因?yàn)殡娐坟?fù)載的限制,可以與同一個(gè)計(jì)時(shí)器總線71耦合以從時(shí)基通道80和81接收時(shí)基值的工作和其它通道數(shù)量的存在一個(gè)上限值。這樣,本發(fā)明允許不同IOCM和不同集成電路上的時(shí)基通道向與不同計(jì)時(shí)器總線耦合的不同的工作和其它通道提供同步化和一致的時(shí)基值。在使用最小數(shù)量的集成電路管腳時(shí),向外設(shè)集成電路(如圖17中的301和302)增加計(jì)時(shí)器通道的性能是重要的。
      參看圖16,注意在本發(fā)明的一實(shí)施例中,在計(jì)時(shí)器系統(tǒng)集成電路280中的IOCM 281包括圖2示出的所有電路。同樣,在計(jì)時(shí)器系統(tǒng)集成電路280中的IOCM 284包括圖2示出的所有電路的副本。不同于模塊間總線24(參看圖1),全局通道通信總線200(參看圖10),主計(jì)時(shí)器信號(hào)328和同步信號(hào)329,IOCM 281和IOCM 286不需要任何其它導(dǎo)線在其間耦合以傳送信息。
      注意在同步時(shí)基通道的上下文中,術(shù)語“主”和“輔”用于指示哪個(gè)時(shí)基通道提供同步信號(hào)(主)和哪個(gè)時(shí)基通道接收同步信號(hào)(輔)。術(shù)語“主”和“輔”與主計(jì)時(shí)器總線控制通道和輔計(jì)時(shí)器總線控制通道的意義不同,與主管腳控制通道和輔管腳控制通道的意義也不同。然而,一般說來,術(shù)語“主”指出提供較多控制的電路,術(shù)語“輔”指出提供較少控制或從主電路那兒接收較多控制信號(hào)的電路。
      管腳/狀態(tài)總線結(jié)構(gòu)參看圖1和圖2,管腳/狀態(tài)總線75-77,與計(jì)時(shí)器總線71和72類似,是模塊化化的,可以擴(kuò)展或分段以創(chuàng)建運(yùn)載不同信號(hào)的獨(dú)立總線。本發(fā)明使用一個(gè)或多個(gè)管腳/狀態(tài)總線75-77,這些總線可以通過管腳控制(PCC)簡(jiǎn)單地劃分成不同的總線和段。
      管腳/狀態(tài)總線75-77用于在IOCM 25內(nèi)的通道間傳送信息。在本發(fā)明的一些實(shí)施例中,一個(gè)或多個(gè)管腳/狀態(tài)總線(如77)用以從一個(gè)IOCM(如25)向另一個(gè)不同的IOCM(如26)傳送信息。另外,管腳/狀態(tài)總線75-77用于在集成電路管腳33和IOCM 25的一個(gè)或多個(gè)通道間傳送信息。集成電路管腳31-35用于接收和提供I/O集成電路22的外部信息。每一個(gè)IOCM25-29都有一個(gè)或多個(gè)管腳/狀態(tài)總線以在多個(gè)IOCM通道間或IOCM通道與一個(gè)或多個(gè)集成電路管腳31-35間傳送信息。
      在本發(fā)明的一些實(shí)施例中,管腳/狀態(tài)總線75-77充當(dāng)通道影響和控制耦合到相同管腳/狀態(tài)總線上的其它通道的方式。管腳/狀態(tài)總線75-77也充當(dāng)通道影響和控制輸出集成電路管腳邏輯電平的方式,以及通道被輸入集成電路管腳的邏輯電平影響和控制的方式。
      在本發(fā)明的一實(shí)施例中,管腳/狀態(tài)總線的每一個(gè)(如圖2中75-77)可以用作四個(gè)用途(1)指示編程輸入的一個(gè)或多個(gè)集成電路管腳的邏輯電平;(2)決定編程輸出的一個(gè)或多個(gè)集成電路管腳的邏輯電平;(3)充當(dāng)一個(gè)或多個(gè)通道的輸入事件源;(4)充當(dāng)一個(gè)或多個(gè)通道的輸出事件目的地。
      由CPU 13(參看圖1)協(xié)調(diào)向通道的數(shù)據(jù)寫入是必須的。在使用管腳/狀態(tài)總線的情況下,一致性必須得到保證。這些總線提供了通道間的同步控制,所以通道操作可以相互同步。因?yàn)镃PU 13也通過管腳控制中的控制寄存器影響這些總線,所以通道操作可以與CPU 13操作同步。其結(jié)果是,通道數(shù)據(jù)的一致存取可以由CPU 13對(duì)管腳/狀態(tài)總線的控制得到保證。
      IOCM 25-29的體系結(jié)構(gòu)和總線結(jié)構(gòu)提供了沿長(zhǎng)度方向的任意處將管腳/狀態(tài)總線簡(jiǎn)單地劃分成段的方法。其結(jié)果是,通道被劃分成可以存取不同集成電路管腳的不同通道塊。在一個(gè)通道塊中的每一個(gè)通道可以向多個(gè),一個(gè),或沒有的集成電路管腳提供信息,或從多個(gè),一個(gè),或沒有的集成電路管腳接收信息。同樣,在一個(gè)通道塊中的多于一個(gè)通道可以向同一個(gè)集成電路管腳提供信息,或從同一個(gè)集成電路管腳接收信息。參看圖2,注意將通道劃分成能夠存取不同管腳/狀態(tài)總線75-77的不同通道塊與將通道劃分程能夠存取不同計(jì)時(shí)器總線的不同通道塊無關(guān)。
      作為例子,參看圖2,注意管腳/狀態(tài)總線75對(duì)應(yīng)于標(biāo)以57的通道塊,管腳/狀態(tài)總線76對(duì)應(yīng)于標(biāo)以58的通道塊。管腳/狀態(tài)總線75用于在通道57間傳送管腳和/或狀態(tài)信息,同樣,管腳/狀態(tài)總線76用于在通道58間傳送管腳和/或狀態(tài)信息。
      與計(jì)時(shí)器總線控制通道(如圖2中61-64)不同,管腳控制不區(qū)分“主”和“輔”版本。取代的是,每一個(gè)管腳控制負(fù)責(zé)控制它相應(yīng)的管腳/狀態(tài)總線。例如,在圖2中,管腳控制51控制管腳/狀態(tài)總線75;管腳控制52控制管腳/狀態(tài)總線76;管腳控制53控制管腳/狀態(tài)總線77。
      然而,如圖3中所示,管腳控制共享邏輯106可用以選擇性地將管腳/狀態(tài)總線118的一個(gè)或多個(gè)導(dǎo)線耦合到管腳/狀態(tài)總線119的一個(gè)或多個(gè)導(dǎo)線。這樣,實(shí)際上組成了一個(gè)擴(kuò)展的管腳/狀態(tài)總線(118,119)。例如,管腳控制共享邏輯106可以聯(lián)結(jié)管腳/狀態(tài)總線118和管腳/狀態(tài)總線119,這樣,總線118和119的一個(gè)或多個(gè)導(dǎo)線可以傳送相同的數(shù)值或信號(hào)。其結(jié)果是,管腳控制共享邏輯106允許管腳/狀態(tài)總線118和119的一部分或全部進(jìn)行有效連接或擴(kuò)展成一根總線,該總線在實(shí)際上兩倍的通道和兩倍的集成電路之間運(yùn)載相同的信號(hào),傳送相同的信息。
      參看圖3,圖3中示出的IOCM 26部分包括4個(gè)管腳/狀態(tài)總線116-119。管腳/狀態(tài)總線116由管腳控制109控制,不向任何其它管腳/狀態(tài)總線傳送任何信息。管腳/狀態(tài)總線117由管腳控制108控制,不向任何其它管腳/狀態(tài)總線傳送任何信息。管腳/狀態(tài)總線118由管腳控制105控制,并通過管腳控制共享邏輯106向和/或從管腳/狀態(tài)總線119傳送信息。管腳/狀態(tài)總線119由管腳控制107控制,并通過管腳控制共享邏輯106向和/或從管腳/狀態(tài)總線118傳送信息。
      在本發(fā)明的一實(shí)施例中,每一個(gè)管腳/狀態(tài)總線(如118)有8根導(dǎo)線用以傳送管腳信息(如112),8根導(dǎo)線可以單獨(dú)編程以傳送8個(gè)管腳信息或狀態(tài)信息(如113)。在管腳控制105中的控制寄存器存儲(chǔ)比特120用于選擇性地決定,對(duì)于每一個(gè)管腳/狀態(tài)總線113,該導(dǎo)線是否在通道123和一個(gè)或多個(gè)集成電路管腳110之間傳送管腳信息,或是否該導(dǎo)線僅在通道123間傳送狀態(tài)信息。同樣,在管腳控制107中的控制寄存器存儲(chǔ)比特122用于選擇性地決定,對(duì)于每一個(gè)管腳/狀態(tài)總線115,該導(dǎo)線是否在通道125和一個(gè)或多個(gè)集成電路管腳111之間傳送管腳信息,或是否該導(dǎo)線僅在通道125間傳送狀態(tài)信息。
      在管腳控制共享邏輯106中控制寄存器存儲(chǔ)比特的一部分用于控制管腳/狀態(tài)總線118的導(dǎo)線與管腳/狀態(tài)總線119的導(dǎo)線的選擇性耦合。在本發(fā)明的可選實(shí)施例中,管腳控制共享邏輯106中控制寄存器存儲(chǔ)比特的一部分可以復(fù)制,作為管腳控制(PCC)105和107物理電路的一部分??梢愿淖兤帘芜x項(xiàng)以激活兩個(gè)管腳控制105和107中的一個(gè)的控制寄存器存儲(chǔ)比特的這一部分。
      例如,改變屏蔽選項(xiàng)可以激活管腳控制105中的控制寄存器存儲(chǔ)比特121的一部分,而管腳控制107中控制寄存器存儲(chǔ)比特121的復(fù)制部分保持未激活狀態(tài)。管腳控制105中激活的控制寄存器存儲(chǔ)比特121部分與管腳控制共享邏輯106耦合,并用于控制管腳控制共享邏輯106,而管腳控制107中未激活的控制寄存器存儲(chǔ)比特121的復(fù)制部分不與管腳控制共享邏輯106耦合,對(duì)管腳控制共享邏輯106無影響。在本發(fā)明的一實(shí)施例中,具有部分激活的控制寄存器存儲(chǔ)比特121的管腳控制105被認(rèn)為是“主”管腳控制,而具有部分未激活的控制寄存器存儲(chǔ)比特121的管腳控制107被認(rèn)為是“輔”管腳控制。
      參看圖2,認(rèn)識(shí)到管腳/狀態(tài)總線75-77必須使用不同的導(dǎo)線是重要的,因?yàn)樗鼈儽仨毮芡瑫r(shí)傳送不同組的管腳/狀態(tài)值。然而,管腳/狀態(tài)總線75-77從概念上可以視為獨(dú)立總線,或者也可以從概念上看成是同一個(gè)全局管腳/狀態(tài)總線的不同部分或段。在這個(gè)意義上,全局管腳/狀態(tài)總線是指向集成電路22的所有必須的通道和所有必需的管腳傳送所有要求的管腳/狀態(tài)值的總線。關(guān)鍵點(diǎn)是對(duì)每一個(gè)必須同時(shí)傳送的管腳/狀態(tài)值組,必須使用不同組的管腳/狀態(tài)總線導(dǎo)線。這些不同的導(dǎo)線可以被認(rèn)為是獨(dú)立總線,或者被認(rèn)為是一根全局總線的不同部分或段。
      注意在本發(fā)明的可選實(shí)施例中,每一個(gè)通道塊可以有更少,更多或不同的通道耦合到管腳/狀態(tài)總線。例如,參看圖2,通道57和58可以包括更少,更多或不同的通道庫(kù)中的可用通道。
      在包含模塊化通道構(gòu)造塊的計(jì)時(shí)器系統(tǒng)中,分段的管腳/狀態(tài)總線結(jié)構(gòu)提供了在沿管腳/狀態(tài)總線方向的任意處向計(jì)時(shí)器系統(tǒng)的不同部分方便地提供多個(gè)和不同管腳/狀態(tài)信息的方式,并且不損失分解率。
      例如,在一個(gè)典型的計(jì)時(shí)器系統(tǒng)(參看圖2)中,通道58之間可能需要交換信息,并在管腳控制52控制下存取集成電路管腳(沒有示出),而通道57之間可能需要交換信息,并在管腳控制51控制下存取集成電路管腳(沒有示出)。參看圖3,如果一個(gè)或多個(gè)通道123需要提供信息,或從一個(gè)或多個(gè)通道125接收信息,管腳控制共享邏輯106必須插入到管腳控制105和管腳控制107之間以允許管腳/狀態(tài)總線118和管腳/狀態(tài)C119共享信息,并同時(shí)傳送相同的管腳/狀態(tài)值。本發(fā)明將全局管腳/狀態(tài)總線在需要向每一個(gè)IOCM 25-29輸出的地方分段。其結(jié)果是,對(duì)應(yīng)于每一個(gè)單個(gè)管腳/狀態(tài)總線的通道(如75,76和77),接收和提供執(zhí)行要求的功能所需要的管腳/狀態(tài)信息。
      也是在需要可能非常長(zhǎng)的管腳/狀態(tài)總線的計(jì)時(shí)器系統(tǒng)中,因?yàn)樾枰С执罅康墓δ?,本發(fā)明提供了將管腳/狀態(tài)總線分段的方式,以保證管腳/狀態(tài)總線的每一部分具有足夠的驅(qū)動(dòng)能力。
      靈活的管腳與和或輸出圖3中示出的管腳/狀態(tài)總線的特定實(shí)施例僅僅是一種可能的實(shí)施例,還有許多其它的實(shí)施例。圖4中示出的管腳/狀態(tài)總線的另一個(gè)可選實(shí)施例,允許用戶邏輯合并多通道輸出以判斷輸出管腳的狀態(tài)。
      在圖4中示出的實(shí)施例中,圖1中管腳/狀態(tài)總線75-77的每一個(gè)各自由輸入狀態(tài)總線143-145和輸出事件總線131-133實(shí)現(xiàn)。每一根輸入狀態(tài)總線143-145各自包括8根管腳導(dǎo)線146,148和150;以及8根管腳/狀態(tài)導(dǎo)線147,149和158。每一個(gè)輸出事件總線131-133各自包括8根置位導(dǎo)線134,137和140;8根清零導(dǎo)線135,138和141,以及8根翻轉(zhuǎn)導(dǎo)線136,139和142。
      輸出事件總線132用于判斷管腳195的輸出狀態(tài),對(duì)應(yīng)于和被控于管腳控制通道52。通道58中的不同通道通過輸出事件總線影響管腳195的邏輯狀態(tài)。管腳195的每一個(gè)藕合到置位導(dǎo)線137中的某一個(gè),清零導(dǎo)線138中的某一個(gè),和翻轉(zhuǎn)導(dǎo)線139中的某一個(gè)。這樣,特定管腳195的邏輯狀態(tài)由藕合到該特定管腳的這三根導(dǎo)線的邏輯狀態(tài)決定,即置位,清零和翻轉(zhuǎn)。然而,注意置位,清零和翻轉(zhuǎn)導(dǎo)線不影響由管腳控制通道52配置為輸入管腳的管腳195。與管腳相關(guān)聯(lián)的置位,清零和翻轉(zhuǎn)導(dǎo)線僅在該管腳被配置為輸出管腳時(shí)才起作用。
      仍參看圖4,在本發(fā)明的一實(shí)施例中,24根導(dǎo)線137-139的每一個(gè)都是一個(gè)能夠與其它導(dǎo)線進(jìn)行線接異或的線接異或?qū)Ь€。在本發(fā)明的一實(shí)施例中,一個(gè)工作通道塊(如160,161)中的所有置位導(dǎo)線137是共同線接異或的。同樣,一個(gè)工作通道塊(如160,161)中的所有清零導(dǎo)線138是共同線接異或的。類似的,一個(gè)工作通道塊(如160,161)中的所有翻轉(zhuǎn)導(dǎo)線139是共同線接異或的。
      作為示例,以下描述管腳/狀態(tài)總線76(參看圖4)的操作。圖5示出了管腳/狀態(tài)總線76的一部分,在管腳165被配置為輸出管腳時(shí),用于控制集成電路管腳165的輸出狀態(tài)。置位導(dǎo)線157是圖4示出的8根置位導(dǎo)線137中的一個(gè);清零導(dǎo)線158是圖4示出的8根清零導(dǎo)線138中的一個(gè);翻轉(zhuǎn)導(dǎo)線159是圖4示出的8根翻轉(zhuǎn)導(dǎo)線139中的一個(gè)。每一根導(dǎo)線157-159是一根預(yù)充電至邏輯電平1的線接異或?qū)Ь€。這樣,如果匹配通道160的管腳控制電路162在導(dǎo)線171上驅(qū)動(dòng)邏輯電平1,而匹配通道161的管腳控制電路163在導(dǎo)線168上驅(qū)動(dòng)邏輯電平0,置位導(dǎo)線157的邏輯電平將是邏輯電平0。因此,對(duì)線接異或?qū)Ь€而言,邏輯電平0是主要的??蛇x實(shí)施例也可以使用線接或?qū)Ь€。
      管腳控制電路164接收置位導(dǎo)線157,清零導(dǎo)線158,翻轉(zhuǎn)導(dǎo)線159的線接異或結(jié)果。管腳控制電路164也通過導(dǎo)線174接收管腳165的當(dāng)前邏輯電平。管腳控制電路164使用導(dǎo)線157-159和174的邏輯電平以判定導(dǎo)線168的邏輯電平結(jié)果,進(jìn)而判定集成電路管腳165的下一個(gè)輸出邏輯電平。
      圖6示出了由管腳控制電路164的一個(gè)實(shí)施例所用的真值表,以判定導(dǎo)線168的邏輯電平結(jié)果,進(jìn)而判定集成電路管腳165的下一個(gè)輸出邏輯電平。結(jié)果導(dǎo)線168用于驅(qū)動(dòng)管腳165的輸出邏輯電平。圖6中示出的真值表定義了一個(gè)協(xié)議,用于決定管腳165對(duì)置位,清零和翻轉(zhuǎn)導(dǎo)線157-159的所有可能情況所采取的行動(dòng)。對(duì)圖6的表而言,置位,清零和翻轉(zhuǎn)導(dǎo)線157-159的正狀態(tài)是邏輯電平“0”,置位,清零和翻轉(zhuǎn)導(dǎo)線157-159的負(fù)狀態(tài)是邏輯電平“1”。該協(xié)議可以陳述如下(1)如果翻轉(zhuǎn)導(dǎo)線159是正狀態(tài),翻轉(zhuǎn)總成功,管腳165被翻轉(zhuǎn);(2)如果所有導(dǎo)線157-159是負(fù)狀態(tài),管腳165保持原電平;(3)如果置位導(dǎo)線157和清零導(dǎo)線158都是正狀態(tài),翻轉(zhuǎn)導(dǎo)線159是負(fù)狀態(tài),管腳165保持原電平。可選實(shí)施例可以使用不同協(xié)議和不同真值表。
      通過帶有獨(dú)立置位(137),清零(138)和翻轉(zhuǎn)(139)導(dǎo)線的輸出事件總線132,本發(fā)明能夠在多個(gè)通道的輸出上執(zhí)行邏輯操作,而不需要服務(wù)處理器介入。這是非常強(qiáng)大和靈活的性能。
      為初始化計(jì)時(shí)器輸出管腳邏輯電平的改變以作為多個(gè)計(jì)時(shí)器通道的結(jié)果狀態(tài),現(xiàn)有技術(shù)必須要求服務(wù)處理器(如中央處理單元)介入。服務(wù)處理器通過中斷或其它機(jī)制介入。服務(wù)處理器識(shí)別多個(gè)計(jì)時(shí)器通道狀態(tài),作為回應(yīng),在計(jì)時(shí)器輸出管腳產(chǎn)生一個(gè)相應(yīng)的邏輯電平改變。匹配通道狀態(tài)的一個(gè)例子是匹配是否出現(xiàn)。
      在識(shí)別被選通道狀態(tài)之后,服務(wù)處理器執(zhí)行狀態(tài)比較,產(chǎn)生下述結(jié)果之一以供特定的自動(dòng)化應(yīng)用使用(1)如果所有被選通道的狀態(tài)是真則置位輸出管腳;(2)如果所有被選通道的狀態(tài)是真則清零輸出管腳;(3)如果任意一個(gè)被選通道的狀態(tài)是真則置位輸出管腳;(4)如果任意一個(gè)被選通道的狀態(tài)是真則清零輸出管腳。不幸的是,通過服務(wù)處理器來比較不同通道的狀態(tài)和導(dǎo)致輸出管腳被驅(qū)動(dòng)到合適的輸出邏輯電平需要大量的軟件開銷。因?yàn)橹梦缓颓辶阋粋€(gè)精確定時(shí)的輸出管腳狀態(tài)以作為多個(gè)通道的綜合狀態(tài),必須服務(wù)處理器的介入,所以服務(wù)處理器的等待時(shí)間會(huì)導(dǎo)致在精確定時(shí)的輸出中出現(xiàn)定時(shí)誤差。
      本發(fā)明允許配置計(jì)時(shí)器通道以執(zhí)行上述四類“邏輯”操作,毋需服務(wù)處理器的介入。其結(jié)果是,在精確定時(shí)的輸出中不會(huì)因服務(wù)處理器的等待時(shí)間而導(dǎo)致出現(xiàn)定時(shí)誤差??梢赃壿嫼喜⒌挠?jì)時(shí)器通道輸出的數(shù)量理論上僅受限于該計(jì)時(shí)器系統(tǒng)中可用的通道總數(shù)。
      本發(fā)明提供用戶可編程的計(jì)時(shí)器通道輸出管腳邏輯與和或,如圖5中的管腳165。在一實(shí)施例中,本發(fā)明提供了一種系統(tǒng),該系統(tǒng)擁有多個(gè)獨(dú)立計(jì)時(shí)器通道和具備選擇性配置一部分通道的能力,可以控制管腳狀態(tài)而毋需服務(wù)處理器的介入。其算法為下述之一(1)如果所有被選通道的輸出狀態(tài)是真,則置位該管腳;(2)如果所有被選通道的輸出狀態(tài)是真,則清零該管腳;(3)如果任一被選通道的輸出狀態(tài)是真,則置位該管腳;(4)如果任一被選通道的輸出狀態(tài)是真,則清零該管腳。
      參看圖5,每一個(gè)管腳有一個(gè)或多個(gè)控制寄存器。匹配通道160有控制寄存器166,匹配通道161有控制寄存器167,管腳控制通道有控制寄存器184。圖7示出了圖5中控制寄存器166的一部分和控制寄存器167的一部分。在一實(shí)施例中,控制寄存器166有四個(gè)管腳選擇控制比特180,用于選擇16個(gè)集成電路管腳中的某一個(gè),而控制寄存器167有四個(gè)管腳選擇控制比特181,用于選擇16個(gè)集成電路管腳中的某一個(gè)。在圖5示出的本發(fā)明的一實(shí)施例中,管腳控制選擇比特180和181由用戶編程以選擇管腳165。
      在本發(fā)明的一實(shí)施例中,控制寄存器166有三個(gè)管腳輸出激勵(lì)控制比特182,用于選擇匹配通道160在輸出管腳165產(chǎn)生的功能。同樣,控制寄存器167有三個(gè)管腳輸出激勵(lì)控制比特183,用于選擇匹配通道161在輸出管腳165產(chǎn)生的功能。圖8示出了在本發(fā)明的一實(shí)施例中,用戶可以通過管腳輸出激勵(lì)控制比特182和183編程的功能。在本發(fā)明的可選實(shí)施例中,可以使用更多比特,更少比特或不同比特編碼不同的控制比特。
      參看圖8,用戶編程功能決定了當(dāng)匹配發(fā)生時(shí),每一個(gè)匹配通道160-161怎樣影響置位導(dǎo)線157,清零導(dǎo)線158和翻轉(zhuǎn)導(dǎo)線159。例如,如果匹配通道160被編程成屏蔽功能,當(dāng)匹配發(fā)生時(shí),匹配通道160將不對(duì)導(dǎo)線157-159產(chǎn)生影響。如果匹配通道160被編程成上升功能,當(dāng)匹配發(fā)生時(shí),匹配通道160將取正置位導(dǎo)線157(通過在置位導(dǎo)線157上驅(qū)動(dòng)邏輯電平0)一個(gè)計(jì)時(shí)器周期。如果匹配通道160被編程成下降功能,當(dāng)匹配發(fā)生時(shí),匹配通道160將取正清零導(dǎo)線158(通過在置位導(dǎo)線158上驅(qū)動(dòng)邏輯電平0)一個(gè)計(jì)時(shí)器周期。如果匹配通道160被編程成翻轉(zhuǎn)功能,當(dāng)匹配發(fā)生時(shí),匹配通道160將取正翻轉(zhuǎn)線159(通過在置位導(dǎo)線159上驅(qū)動(dòng)邏輯電平0)一個(gè)計(jì)時(shí)器周期。
      剩余的四項(xiàng)功能,即與清零,與置位,或清零和或置位,是用戶可編程的計(jì)時(shí)器通道輸出的邏輯與和或。圖9示出了通過匹配通道160和161狀態(tài)的邏輯與和或在管腳165產(chǎn)生的輸出結(jié)果?!癟”是真,指示發(fā)生了匹配,“F”是假,指示匹配未曾發(fā)生。如果匹配通道160和161都編程為與置位,當(dāng)匹配通道160和匹配通道161都發(fā)生匹配時(shí),管腳165的下一個(gè)邏輯電平才能被置位(也即是邏輯電平“1”)。這樣,與置位意味著匹配必須在匹配通道160和匹配通道161都發(fā)生時(shí),才能置位管腳165。同樣,與清零意味著匹配必須在匹配通道160和匹配通道161都發(fā)生時(shí),才能清零管腳165。
      如果匹配通道160和161都編程為或置位,當(dāng)匹配通道160或匹配通道161發(fā)生匹配時(shí),管腳165的下一個(gè)邏輯電平被置位(也即是邏輯電平“1”)。這樣,或置位意味著在匹配通道160或匹配通道161發(fā)生匹配時(shí),就置位管腳165。同樣,或清零意味著在匹配通道160或匹配通道161發(fā)生匹配時(shí),就清零管腳165。盡管圖9示出的例子使用兩個(gè)匹配通道,實(shí)際上可以使用任意數(shù)量的匹配通道。
      另外,可以合并不同的邏輯與和或功能。例如,附加通道,如計(jì)數(shù)通道185,可以放置于圖5的匹配通道160和管腳控制通道52之間。計(jì)數(shù)通道185可以在控制寄存器187中有用戶編程以選擇管腳165的控制管腳選擇比特。這樣,計(jì)數(shù)通道185可以驅(qū)動(dòng)導(dǎo)線157-159。如果匹配通道160和161都編程為與置位,計(jì)數(shù)通道185編程為或置位,當(dāng)計(jì)數(shù)通道185達(dá)到其計(jì)數(shù)值或匹配通道160和匹配通道161都發(fā)生匹配時(shí),管腳165將被置位。本發(fā)明可用于組成更復(fù)雜的涉及不同通道狀態(tài)的布爾方程。
      參看圖5,因?yàn)橹梦?,清零和翻轉(zhuǎn)導(dǎo)線本身的線結(jié)異或?qū)傩?,它們?shí)際上用于執(zhí)行邏輯與和邏輯或操作。下面描述邏輯與和邏輯或操作是如何執(zhí)行的。在本發(fā)明的一實(shí)施例中,置位導(dǎo)線157和清零導(dǎo)線158用于實(shí)現(xiàn)與清零和與置位功能;翻轉(zhuǎn)導(dǎo)線159用于實(shí)現(xiàn)或清零和或置位功能。
      如果匹配通道160編程為與置位,匹配通道160將取正清零導(dǎo)線158直至發(fā)生匹配。注意置位導(dǎo)線157和翻轉(zhuǎn)導(dǎo)線159保持預(yù)充電的負(fù)狀態(tài)(也即邏輯電平“1”)。當(dāng)發(fā)生匹配時(shí),匹配通道160將取正置位導(dǎo)線157并持續(xù)取正直至管腳165的邏輯電平變?yōu)檫壿嬰娖?(也就是置位)。注意匹配通道160通過輸入狀態(tài)總線144接收管腳165的輸出邏輯電平(參看圖4)。只要管腳165保持置位,匹配通道160不再取正任何導(dǎo)線157-159。管腳165可以由其它導(dǎo)線清零,如果匹配通道160被軟件重新配置,也可以由匹配通道160對(duì)它清零。一旦管腳165被清零,匹配通道160再次取正清零導(dǎo)線158直至發(fā)生匹配。
      如果匹配通道160編程為與清零,匹配通道160將取正置位導(dǎo)線157直至發(fā)生匹配。注意清零導(dǎo)線158和翻轉(zhuǎn)導(dǎo)線159保持預(yù)充電的負(fù)狀態(tài)(也即邏輯電平“1”)。當(dāng)發(fā)生匹配時(shí),匹配通道160將取正清零導(dǎo)線158并持續(xù)取正直至管腳165的邏輯電平變?yōu)檫壿嬰娖?(也就是清零)。注意匹配通道160通過輸入狀態(tài)總線144接收管腳165的輸出邏輯電平(參看圖4)。只要管腳165保持清零,匹配通道160不再取正任何導(dǎo)線157-159。管腳165可以由其它導(dǎo)線置位,如果匹配通道160被軟件重新配置,也可以由匹配通道160對(duì)它置位。一旦管腳165被置位,匹配通道160再次取正置位導(dǎo)線157直至發(fā)生匹配。
      如果匹配通道160編程為或置位,匹配通道160將不取正任何導(dǎo)線157-159直至發(fā)生匹配。注意導(dǎo)線157-159保持預(yù)充電的負(fù)狀態(tài)(也即邏輯電平“1”)。管腳165必須由其它通道清零,或通過不同配置的匹配通道160清零。當(dāng)發(fā)生匹配時(shí),匹配通道160將取正翻轉(zhuǎn)導(dǎo)線159并持續(xù)取正直至管腳165的邏輯電平變?yōu)橄喾吹倪壿嬰娖?(也就是置位)。注意匹配通道160通過輸入狀態(tài)總線144接收管腳165的輸出邏輯電平(參看圖4)。只要管腳165保持置位,匹配通道160不再取正任何導(dǎo)線157-159。管腳165可以由其它導(dǎo)線清零,如果匹配通道160被軟件重新配置,也可以由匹配通道160對(duì)它清零。一旦管腳165被清零,匹配通道160再次等待直至翻轉(zhuǎn)導(dǎo)線159發(fā)生匹配。
      如果匹配通道160編程為或清零,匹配通道160將不取正任何導(dǎo)線157-159直至發(fā)生匹配。注意導(dǎo)線157-159保持預(yù)充電的負(fù)狀態(tài)(也即邏輯電平“1”)。管腳165必須由其它通道置位,或通過不同配置的匹配通道160置位。當(dāng)發(fā)生匹配時(shí),匹配通道160將取正翻轉(zhuǎn)導(dǎo)線159并持續(xù)取正直至管腳165的邏輯電平變?yōu)橄喾吹倪壿嬰娖?(也就是清零)。注意匹配通道160通過輸入狀態(tài)總線144接收管腳165的輸出邏輯電平(參看圖4)。只要管腳165保持清零,匹配通道160不再取正任何導(dǎo)線157-159。管腳165可以由其它導(dǎo)線置位,如果匹配通道160被軟件重新配置,也可以由匹配通道160對(duì)它置位。一旦管腳165被清零,匹配通道160再次等待直至翻轉(zhuǎn)導(dǎo)線159發(fā)生匹配。
      注意圖5中電路操作的上述描述也適用于其它通道57-58和圖4中示出的其它輸出事件總線導(dǎo)線131-133。
      現(xiàn)在描述在圖4中示出的輸入狀態(tài)總線143-145的操作。在一實(shí)施例中,輸入狀態(tài)總線143,144和145每一個(gè)各自包括8個(gè)管腳導(dǎo)線146,148和150,以及8個(gè)管腳/狀態(tài)導(dǎo)線147,149和151。這樣,每一個(gè)管腳/狀態(tài)總線(如118)有8個(gè)導(dǎo)線用于傳送管腳信息(如112),和8個(gè)可單獨(dú)編程以傳送管腳信息或狀態(tài)信息的導(dǎo)線(如113)。
      在管腳控制通道52中的控制寄存器存儲(chǔ)比特192用于有選擇地判斷每一個(gè)管腳/狀態(tài)導(dǎo)線149是在通道58和一個(gè)或多個(gè)集成電路管腳195之間傳送管腳信息,還是僅在通道58之間傳送狀態(tài)信息。同樣,在管腳控制通道51中的控制寄存器存儲(chǔ)比特191用于有選擇地判斷每一個(gè)管腳/狀態(tài)導(dǎo)線151是在通道57和一個(gè)或多個(gè)集成電路管腳194之間傳送管腳信息,還是僅在通道57之間傳送狀態(tài)信息。
      管腳/狀態(tài)導(dǎo)線147,149和151可以用作狀態(tài)導(dǎo)線,狀態(tài)導(dǎo)線對(duì)管腳沒有影響,但可以告知其它通道在某個(gè)特定通道上發(fā)生了事件(如匹配)。其它導(dǎo)線因而可以基于特定通道上發(fā)生的事件,同時(shí)調(diào)整各自的行為。當(dāng)用作狀態(tài)導(dǎo)線時(shí),導(dǎo)線149提供了一種硬件聯(lián)結(jié)通道58中不同通道的方式。同樣,當(dāng)用作狀態(tài)導(dǎo)線時(shí),導(dǎo)線151提供了一種硬件聯(lián)結(jié)通道57中不同通道的方式。例如,匹配通道161可以通過取正導(dǎo)線149中的一個(gè)提供匹配發(fā)生的信息。這樣,一個(gè)或多個(gè)通道58中的通道監(jiān)控該導(dǎo)線以判斷通道161中是否發(fā)生匹配。
      管腳導(dǎo)線148用于將集成電路管腳195的目前邏輯狀態(tài)傳送回通道58,管腳導(dǎo)線150用于將集成電路管腳194的目前邏輯狀態(tài)傳送回通道57。更具體地,管腳導(dǎo)線148中的每一個(gè)從管腳向通道58回送該導(dǎo)線所對(duì)應(yīng)的集成電路管腳195中的某一個(gè)的目前邏輯電平。同樣,管腳導(dǎo)線150中的每一個(gè)從管腳向通道57回送該導(dǎo)線所對(duì)應(yīng)的集成電路管腳194中的某一個(gè)的目前邏輯電平。
      這樣,本發(fā)明允許多個(gè)通道(如圖4中通道58)向相同管腳/狀態(tài)總線導(dǎo)線(如管腳/狀態(tài)總線導(dǎo)線76)提供信息。其結(jié)果是,多于一個(gè)通道可以影響集成電路管腳的邏輯電平,(如管腳195中的一個(gè)),并且多個(gè)通道可以是硬件連接的。盡管上述的實(shí)施執(zhí)行邏輯與和或功能,在本發(fā)明的可選實(shí)施例中,可以執(zhí)行任意邏輯操作,包括邏輯異或,異與,排它或和更復(fù)雜的布爾功能。
      全局通道通信總線參看圖10,在本發(fā)明的一些實(shí)施例中,通過一根全局通道通信總線200在藕合到不同管腳/狀態(tài)總線216-218的通道間傳送信息。全局通道通信總線200的目的是在不同IOCM 25-29(參看圖1)的通道間傳送信息,以及在一個(gè)IOCM中藕合到不同管腳/狀態(tài)總線(如圖10中的216和217)的通道間傳送信息。另外,在本發(fā)明的一些實(shí)施例中,全局通道通信總線200可以通過集成電路管腳223從外部接收信息,并向輸入/輸出集成電路22(參看圖1)提供信息。注意在本發(fā)明的一實(shí)施例中,圖1中示出的管腳34可能包括管腳213-215和圖10中示出的管腳233的一個(gè)或多個(gè)。
      以現(xiàn)有技術(shù),本地產(chǎn)生的狀態(tài)和控制信息通過服務(wù)處理器與在一個(gè)或多個(gè)集成電路上的其它獨(dú)立電路功能塊通信。例如,許多控制應(yīng)用使用由通道產(chǎn)生的事件(如匹配,捕獲,定時(shí)等等)以觸發(fā)多個(gè)獨(dú)立電路功能塊上的不同處理。這些獨(dú)立電路功能塊在物理上可以分配在不同模塊上,甚至在不同集成電路上。在目前實(shí)現(xiàn)中,要求單個(gè)事件產(chǎn)生一個(gè)中斷,要求中斷服務(wù)例程觸發(fā)在每一個(gè)獨(dú)立電路功能塊上所采取的行動(dòng)。另外,中斷服務(wù)例程依次觸發(fā)每一個(gè)行動(dòng)。
      通過使用全局通道通信總線200(參看圖10)取代中斷,本發(fā)明允許向所有通道同時(shí)廣播狀態(tài)和控制信息。這樣,多個(gè)獨(dú)立電路功能塊內(nèi)的所有操作都可以同步觸發(fā),從而在整個(gè)數(shù)據(jù)處理系統(tǒng)10內(nèi)部提供了通信全局信號(hào)的一致方式(參看圖1)。
      由全局通道通信總線200(參看圖10)提供的全局廣播性能消除了每次發(fā)生一個(gè)必須與藕合到不同管腳/狀態(tài)總線的不同通道通信的事件時(shí)所需的對(duì)服務(wù)處理器的中斷。與使用服務(wù)處理器的現(xiàn)有技術(shù)實(shí)現(xiàn)方式相比,因?yàn)橹袛喾?wù)例程的速度通常比全局通道通信總線200的廣播性能的速度慢一個(gè)數(shù)量級(jí),所以全局通道通信總線200也導(dǎo)致了更快的通信和響應(yīng)時(shí)間。
      另外,在軟件故障期間,服務(wù)處理器通常是不運(yùn)行的。因?yàn)榉?wù)處理器不運(yùn)行,中斷就不能產(chǎn)生,許多需要相互通信的I/O功能必須被屏蔽。以前,如果在軟件故障期間要求I/O系統(tǒng)執(zhí)行一些有限的操作,需要設(shè)計(jì)特定的硬件。因?yàn)楠?dú)立電路功能塊相互之間可以通過全局通道通信總線200直接通信,所以本發(fā)明的廣播性能消除了對(duì)這些特定硬件的需要。
      本發(fā)明的廣播性能也簡(jiǎn)化了修改和增加數(shù)據(jù)處理系統(tǒng)10(參看圖1)所需的設(shè)計(jì)和實(shí)現(xiàn)。在數(shù)據(jù)處理系統(tǒng)10的許多版本中,一個(gè)IOCM 25-29內(nèi)的通道用于執(zhí)行一種或有限數(shù)量的特定功能,為增加原始應(yīng)用的帶寬或修改應(yīng)用以執(zhí)行其它任務(wù)而重新配置硬件有些困難。全局通道通信總線200提供的廣播性能允許多個(gè)獨(dú)立電路功能塊(如IOCM 25-29)相互之間可以通信,從而增加了帶寬并允許跨IOCM實(shí)現(xiàn)不同功能。
      參看圖10,全局通道通信總線200用于在藕合到不同管腳/狀態(tài)總線216-218的通道間傳送信息。不同管腳/狀態(tài)總線216-217可以分布在同一個(gè)IOCM(如IOCM27)內(nèi),或不同管腳/狀態(tài)總線217-218可以分布在不同IOCM上(如IOCM 26和IOCM 27)。在本發(fā)明的一些實(shí)施例中,全局通道通信總線200可以與一個(gè)集成電路22上的所有管腳/狀態(tài)總線藕合。
      在可選實(shí)施例中,全局通道通信總線200可以僅僅與必須與未藕合在同一根管腳/狀態(tài)總線上的通道通信的管腳/狀態(tài)總線藕合。例如,如果通道206中沒有通道需要接收或向除了通道206外的任何其它通道提供信息,管腳/狀態(tài)總線218就不必藕合到全局通道通信總線200上。
      參看圖1,模塊件總線24用于執(zhí)行C管腳U13對(duì)位于外部總線接口23的寄存器和位于IOCM 25-29內(nèi)的通道的寄存器的讀和寫操作。模塊件總線24也傳送系統(tǒng)信息,如中斷信息。模塊件總線24分別通過總線接口單元3640與每一個(gè)IOCM接口。在本發(fā)明的一實(shí)施例中,全局通道通信總線200僅僅作為模塊件總線24的一部分。
      然而,在本發(fā)明的可選實(shí)施例中,全局通道通信總線200不同于模塊件總線24。全局通道通信總線200直接向每一個(gè)IOCM 25-29中的管腳控制通道(如201-203)尋找路由。全局通道通信總線200直接與每一個(gè)管腳控制通道(如201-203)通信而不是通過總線接口單元36-40間接通信。
      在分別位于每一個(gè)管腳控制通道201-203中的藕合電路220-222各自藕合到一個(gè)或多個(gè)控制寄存器224-226。作為例子,控制寄存器224中的控制寄存器存儲(chǔ)比特可以由用戶編程以選擇管腳/狀態(tài)總線216中的哪一根或哪幾根導(dǎo)線藕合到全局通道通信總線200上。這樣,用戶可以通過控制寄存器229-230和管腳控制電路227-228選擇哪個(gè)通道藕合到管腳/狀態(tài)總線216中的哪一根導(dǎo)線,用戶還可以通過控制寄存器224和藕合電路220選擇管腳/狀態(tài)總線216中的哪一根導(dǎo)線藕合到全局通道通信總線200上。
      在本發(fā)明的一實(shí)施例中,全局通道通信總線200的每一個(gè)都是由弱下拉設(shè)備(未示出)下拉成邏輯電平0的線接或?qū)Ь€。這樣,如果工作通道212通過藕合電路222將全局通道通信總線200的第一導(dǎo)線置成邏輯電平1,而工作通道210通過藕合電路221將全局通道通信總線200的同一根第一導(dǎo)線置成邏輯電平1,全局通道通信總線200的第一導(dǎo)線的邏輯電平將是邏輯電平1。因此,對(duì)線接或?qū)Ь€而言,邏輯電平1是主要的??蛇x實(shí)施例可以使用線接異或?qū)Ь€。
      參看圖10,在本發(fā)明的一實(shí)施例中,管腳/狀態(tài)總線(如216-218)不是線接或?qū)Ь€或線接異或?qū)Ь€。因此,對(duì)接收廣播值的通道(如204-206),藕合電路(如220-222)從全局通道通信總線200接收該廣播值,然后以合適的值驅(qū)動(dòng)管腳/狀態(tài)總線的被選導(dǎo)線(如216-218)。類似地,對(duì)提供廣播值的通道(如204-206),藕合電路(如220-222)從管腳/狀態(tài)總線的適當(dāng)導(dǎo)線(如216-218)讀取數(shù)值,然后以合適的值驅(qū)動(dòng)全局通道通信總線200。
      其結(jié)果是,本發(fā)明允許數(shù)據(jù)處理系統(tǒng)10(參看圖10)的用戶編程選擇集成電路22中,或不同集成電路(如集成電路12)中哪一個(gè)或哪幾個(gè)通道可以向全局通道通信總線200的導(dǎo)線提供信息。向全局通道通信總線200提供的信息向用戶選擇的集成電路22或不同集成電路(如集成電路12)的所有通道同步廣播,毋需服務(wù)處理器的介入。
      本發(fā)明提供了數(shù)據(jù)處理系統(tǒng)10所有通道的信號(hào)或信息的同步全局通信方式。本發(fā)明提供了在多個(gè)獨(dú)立電路功能塊(如IOCM 25-29)間共享信息的靈活性,從而允許IOCM 25-29共同運(yùn)行,協(xié)調(diào)它們執(zhí)行的一個(gè)或多個(gè)功能。另外,本發(fā)明減少了用于服務(wù)處理器的中斷數(shù)量,允許數(shù)據(jù)處理系統(tǒng)10可以同步執(zhí)行更多的功能。
      圖11示出了圖10中控制寄存器226的一部分的一實(shí)施例。在本發(fā)明的一實(shí)施例中,全局通道通信總線200包括8根導(dǎo)線。全局通道通信總線200的8根導(dǎo)線的每一根都有一個(gè)對(duì)應(yīng)的SFUN(狀態(tài)功能控制)寄存器存儲(chǔ)比特250,一個(gè)SDAT(狀態(tài)數(shù)據(jù))寄存器存儲(chǔ)比特251,一個(gè)GLS(全局/本地選擇控制)寄存器存儲(chǔ)比特252,和一個(gè)GDO(全局?jǐn)?shù)據(jù)輸出)寄存器存儲(chǔ)比特253。例如,導(dǎo)線246(參看圖12)對(duì)應(yīng)于SFUN比特254,SDAT比特255,GLS比特256和GDO比特257。
      SDAT比特251含有狀態(tài)數(shù)據(jù),狀態(tài)數(shù)據(jù)代表出于通道到通道的通信和通道到C管腳U的通信的需要,由全局或本地通道產(chǎn)生的輸出狀態(tài)事件的結(jié)果。每一個(gè)SDAT比特251受對(duì)應(yīng)的SFUN比特250控制。每一個(gè)SFUN比特250指定了一種與對(duì)應(yīng)的SDAT比特251相關(guān)的模式。SDAT比特251所賦的模式是“硬件控制”模式和“軟件控制”模式。除了SFUN比特250,SDAT比特251也由GLS比特252配置。每一個(gè)GLS比特252控制相應(yīng)SDAT比特251是否代表本地狀態(tài)數(shù)據(jù)或全局狀態(tài)數(shù)據(jù)。
      作為例子,參看圖10和圖12,如果SDAT比特255被相應(yīng)GLS比特256配置成本地方式,并且被相應(yīng)SFUN比特254配置成“硬件控制”,SDAT比特255包含由通道206在導(dǎo)線241上驅(qū)動(dòng)的通道輸出狀態(tài)事件的結(jié)果。如果SDAT比特255被相應(yīng)GLS比特256配置成全局方式,并且被相應(yīng)SFUN比特254配置成“硬件控制”,SDAT比特255包含由集成電路22(參看圖1)中任意處的被選通道在導(dǎo)線246上驅(qū)動(dòng)的全局狀態(tài)事件的結(jié)果。SDAT比特255通過導(dǎo)線240向通道206提供它的數(shù)據(jù)。在“硬件控制”方式下,SDAT比特251不能被C管腳U13寫(參看圖1)。
      如果SDAT比特255被相應(yīng)GLS比特256配置成本地方式,并且被相應(yīng)SFUN比特254配置成“軟件控制”,SDAT比特255包含由C管腳U 13寫入的數(shù)據(jù)以仿真導(dǎo)線241的狀態(tài)。然而,當(dāng)配置成全局方式時(shí),在軟件控制方式下,SDAT比特255不能被寫入。SDAT比特255反映導(dǎo)線246的全局狀態(tài)。SDAT比特255向?qū)Ь€240提供該值。在軟件控制方式下,僅在配置成本地狀態(tài)時(shí),SDAT比特251才能被C管腳U13寫入(參看圖1)。為了寫全局狀態(tài),GDO比特257必須被寫入。
      當(dāng)寫SDAT比特251時(shí),可以強(qiáng)制單個(gè)SDAT比特變?yōu)樾聽顟B(tài)而不影響其它比特。為實(shí)現(xiàn)此目的,SDAT比特251和SFUN比特250必須同時(shí)被C管腳U13寫入。因?yàn)槊恳粋€(gè)SFUN比特250控制一個(gè)對(duì)應(yīng)的SDAT比特251,所以SFUN比特250的內(nèi)容決定該次寫入影響SDAT比特251。為了寫入以影響SDAT比特251中的某一個(gè),相應(yīng)的SFUN比特250必須寫入%0。為了寫入而不影響SDAT比特251中的某一個(gè),相應(yīng)的SFUN比特250必須寫入%1。通過這種方式,SFUN比特250用于屏蔽相應(yīng)的SDAT比特251以控制對(duì)特定SDAT比特251的比特寫。
      參看圖11和圖12,GDO比特253包含提供給全局通道通信總線200的全局?jǐn)?shù)據(jù)。存儲(chǔ)在GDO比特257中的數(shù)據(jù)由兩個(gè)可能的源中的一個(gè)提供,即導(dǎo)線241和C管腳U13。SFUN比特250和GLS比特256決定導(dǎo)線241或C管腳U13是否向GDO比特257提供全局?jǐn)?shù)據(jù)。
      當(dāng)GLS比特256被配置成全局方式,GDO比特257用于向?qū)Ь€246提供一個(gè)全局狀態(tài)值。在軟件控制方式和硬件控制方式下,GDO比特257都通過在導(dǎo)線246上驅(qū)動(dòng)該全局狀態(tài)值來提供該全局狀態(tài)值。如果GDO比特257由相應(yīng)SFUN比特254配置成軟件控制方式,則C管腳U13可以修改存儲(chǔ)在GDO比特257中的全局狀態(tài)值。如果GDO比特257由相應(yīng)SFUN比特254配置成硬件控制方式,則只有導(dǎo)線241能修改存儲(chǔ)在GD0比特257中的全局狀態(tài)值。
      當(dāng)GLS比特256被配置成本地方式,GDO比特257不再用于向?qū)Ь€246提供全局狀態(tài)。GDO比特257不能被C管腳U13寫入。GDO比特257只能被導(dǎo)線241修改。
      參看圖3,注意將管腳110的一個(gè)(對(duì)應(yīng)于PCC105)藕合到管腳/狀態(tài)信息導(dǎo)線115的一個(gè)(對(duì)應(yīng)于其它成對(duì)的PCC107)的能力,允許用戶從全局通道通信總線200向輸出管腳110提供通道輸出。這樣,集成電路22(參看圖1)中的任何通道可以通過全局通道通信總線200向任意輸出管腳31-35輸出事件。在本發(fā)明的一實(shí)施例中,輸入管腳110的邏輯電平不在管腳/狀態(tài)信息導(dǎo)線115上反映,這樣,管腳輸入不能通過全局通道通信總線進(jìn)行全局通信。在本發(fā)明的一個(gè)可選實(shí)施例中,一個(gè)輸入管腳110的邏輯電平可以被反映到管腳/狀態(tài)信息導(dǎo)線115上,因此可通過全局通道通信總線200來全局傳輸管腳輸入。
      在本發(fā)明的一個(gè)實(shí)施例中,GDO比特位253能被CPU13隨時(shí)讀取,僅在軟件控制模式中設(shè)置為全局狀態(tài)時(shí),才可被CPU13寫入。
      參照?qǐng)D11和圖12,每個(gè)SFUN比特位250用于選擇模式,稱為軟件控制模式或硬件控制模式,分別對(duì)應(yīng)一個(gè)SDAT比特位251和GDO比特位253。CPU13可以隨時(shí)讀寫SFUN比特位250。
      參照?qǐng)D11和圖12,每個(gè)GLS比特位252用于選擇對(duì)應(yīng)的一個(gè)SDAT比特位251是局部的或是全局的。存儲(chǔ)在SDAT比特位251的局部狀態(tài)值僅在局部管腳/狀態(tài)總線(如圖10中的218)上傳輸,該總線由局部管腳控制通道(如圖10中的203)所控制。存儲(chǔ)在GDO比特位257中的全局狀態(tài)值,可以通過全局通道通信總線200或局部管腳/狀態(tài)總線(如圖10中的218)來提供。CPU13可以隨時(shí)讀寫GLS比特位252。
      參照?qǐng)D12,應(yīng)注意SDAT比特位255可由對(duì)應(yīng)的GLS比特位256分別設(shè)置為全局的或局部的。設(shè)置為全局時(shí),導(dǎo)線241提供一個(gè)全局狀態(tài)值給GDO比特位257,而不是SDAT比特位255。GDO比特位257是通過導(dǎo)線246向全局通道通信總線200提供全局狀態(tài)值的來源。引線或?qū)Ь€246的最終邏輯電平(即全局狀態(tài)值)存儲(chǔ)在SDAT比特位255中。該全局狀態(tài)值傳輸?shù)綄?dǎo)線240,再送至通道206的輸入(見圖10)。
      應(yīng)注意本發(fā)明的一個(gè)實(shí)施例中,有一個(gè)全局計(jì)時(shí)器總線(未標(biāo)出),耦合給每個(gè)主計(jì)時(shí)器總線控制通道(如圖2中的61和62),用于將一個(gè)或多個(gè)時(shí)基值傳輸給不同的集成電路22(如圖1)上的計(jì)時(shí)器總線(如圖2中的71和72)。全局計(jì)時(shí)器總線(未示出)以模擬方式作用在全局通道通信總線200上(見圖10)。在本發(fā)明的一個(gè)可選例中,未使用一個(gè)全局計(jì)時(shí)器總線。而是,如果獨(dú)立的IOCMs25-29要求相同的時(shí)基值時(shí),產(chǎn)生所需時(shí)基的時(shí)基通道(如圖2中的度計(jì)時(shí)器通道94)被復(fù)制給多個(gè)IOCMs25-29。
      通道間數(shù)據(jù)傳輸在“通道硅庫(kù)(silicon library of channels)”多個(gè)通道,可以編程用于完成數(shù)據(jù)傳輸操作。在數(shù)據(jù)傳輸操作中,數(shù)據(jù)可以從一個(gè)頂端相鄰?fù)ǖ?如圖20中的400)的數(shù)據(jù)寄存器傳輸給通道本身的數(shù)據(jù)寄存器(如401),和從通道(如401)本身的數(shù)據(jù)寄存器傳輸給底端相鄰?fù)ǖ?如402)的數(shù)據(jù)寄存器。通過對(duì)通道的控制寄存器比特位進(jìn)行編程,來完成這些通道間數(shù)據(jù)傳輸,就可以構(gòu)成和使用棧和先入先出(FIFO)結(jié)構(gòu)。在本發(fā)明的一個(gè)實(shí)施例中支持通道間數(shù)據(jù)傳輸?shù)墓ぷ魍ǖ腊?1)匹配通道(2)俘獲通道;和(3)加計(jì)數(shù)器通道。在一個(gè)實(shí)施例中,可逆計(jì)數(shù)器通道也允許一些數(shù)據(jù)傳輸功能。
      在本發(fā)明的一個(gè)實(shí)施例中,可利用支持通道間數(shù)據(jù)傳輸?shù)耐ǖ罉?gòu)成三種基本類型的結(jié)構(gòu)(1)棧,是收集許多時(shí)基值或計(jì)數(shù)操作值的有用結(jié)構(gòu);(2)FIFO,多個(gè)匹配輸出事件可以輸出給一個(gè)管腳或狀態(tài)導(dǎo)線,其中利用存儲(chǔ)在FIFO結(jié)構(gòu)中所收集的時(shí)基值,(這些輸出事件可被其它通道或直至I/O集成電路等裝置所利用);(3)FIFO也可用于收集和存儲(chǔ)最新俘獲到的時(shí)基值或最新計(jì)數(shù)操作。
      這種棧和FIFO數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)可以降低通道要求的服務(wù)頻率,因而降低需由CPU13響應(yīng)的中斷數(shù)(見圖1)。圖20顯示相鄰?fù)ǖ?00-402間數(shù)據(jù)傳輸操作的一個(gè)例子。
      如圖20所示,匹配通道400,俘獲通道401,計(jì)數(shù)器通道402,各自控制從它們頂端相鄰?fù)ǖ赖剿鼈冏陨頂?shù)據(jù)寄存器的數(shù)據(jù)傳輸。為了控制數(shù)據(jù)傳輸,一個(gè)通道的數(shù)據(jù)傳輸邏輯(如407-409中的一個(gè)),與頂端相鄰?fù)ǖ赖臄?shù)據(jù)傳輸邏輯進(jìn)行通信,每個(gè)通道的數(shù)據(jù)傳輸邏輯可以向狀態(tài)總線414產(chǎn)生兩種輸出文件,稱為顯示通道與頂端相鄰?fù)ǖ蓝加杏行?shù)據(jù)的一種輸出文件,和顯示通道與頂端相鄰?fù)ǖ蓝加袩o效數(shù)據(jù)的一種輸出文件。此外,俘獲通道401可以利用來自狀態(tài)總線414的輸入文件,使它數(shù)據(jù)寄存器404中的數(shù)據(jù)無效。
      在本發(fā)明的一個(gè)實(shí)施例中,管腳控制通道(PCC)(如圖2中的52)具有一個(gè)32-bit數(shù)據(jù)通路,經(jīng)過它,PCC的頂端相鄰?fù)ǖ揽梢源┻^PCC傳輸數(shù)據(jù)給它的底端相鄰?fù)ǖ?。穿過PCC的數(shù)據(jù)傳輸不影響PCC。(即PCC沒有數(shù)據(jù)傳輸控制和不存儲(chǔ)通過它的數(shù)據(jù)。)圖21和圖22所示電路,包括控制和狀態(tài)寄存器存儲(chǔ)電路,它被用來支持一個(gè)通道(如俘獲通道401)中的數(shù)據(jù)傳輸操作。圖21所示電路用于16-bit數(shù)據(jù)傳輸操作,圖22所示電路用于32-bit數(shù)據(jù)傳輸操作。32-bit數(shù)據(jù)傳輸功能,用于數(shù)據(jù)傳輸操作的寄存器比特位,相鄰?fù)ǖ篱g通信的信號(hào),所用的輸入事件和一個(gè)通道數(shù)據(jù)傳輸邏輯產(chǎn)生的輸出事件都將在以下描述。應(yīng)注意控制和狀態(tài)寄存器存儲(chǔ)電路可被看作虛擬的盒子,因?yàn)樗鼈兾锢砩隙ㄎ挥谝粋€(gè)或多個(gè)用戶可編程寄存器的一部分。應(yīng)注意清零DVB輸入事件信號(hào)僅能被俘獲通道使用。
      匹配通道400,俘獲通道401,計(jì)數(shù)器通道402都可被設(shè)置運(yùn)行在數(shù)據(jù)傳輸模式,或者作為兩個(gè)完全獨(dú)立的16位子通道或者作為一個(gè)32位通道。如圖21所示,俘獲通道401被設(shè)置成16位數(shù)據(jù)傳輸操作模式。如圖22所示,俘獲通道400被設(shè)置成32位數(shù)據(jù)傳輸操作模式。匹配通道400和計(jì)數(shù)器通道402可用同樣的方式設(shè)置。
      參照?qǐng)D21,應(yīng)注意控制每個(gè)16位子通道的邏輯單元功能相似但彼此獨(dú)立。在本發(fā)明的一個(gè)實(shí)施例中,一個(gè)通道的兩個(gè)16位子通道不必運(yùn)行于同一操作模式。例如設(shè)置匹配通道400的高16位子通道,來匹配計(jì)時(shí)器總線上的16位值(如圖2的計(jì)時(shí)器總線71),低16位子通道用于16比特?cái)?shù)據(jù)傳輸操作。
      參考圖21,控制通道高16位的寄存器存儲(chǔ)比特位被置“0”,控制通道低16位的寄存器存儲(chǔ)比特位被置“1”(如DTC0和DTC1)。如圖22,當(dāng)通道(如401)被設(shè)置進(jìn)行32比特?cái)?shù)據(jù)傳輸時(shí),控制高16位子通道的寄存器存儲(chǔ)位被用來控制32位的數(shù)據(jù)傳輸。
      在本發(fā)明的一個(gè)實(shí)施例中,支持?jǐn)?shù)據(jù)傳輸操作的通道有三種不同的寄存器比特字段,用來控制數(shù)據(jù)傳輸和向CPU13提供狀態(tài)信息。這三個(gè)寄存器位分別是數(shù)據(jù)有效比特(DVB),數(shù)據(jù)傳輸控制比特(DTC),和數(shù)據(jù)傳輸狀態(tài)比特(DTS)。在本發(fā)明的一個(gè)實(shí)施例中,俘獲通道和計(jì)數(shù)器通道還使用輸入事件邊沿選擇位(IE)來控制事件傳輸操作。
      參考圖21和22,每個(gè)數(shù)據(jù)有效比特位(DVB)425-426被相應(yīng)的數(shù)據(jù)傳輸邏輯422,429,430用作控制和狀態(tài)比特位。作為狀態(tài)比特位,DVB指示相應(yīng)數(shù)據(jù)寄存器中有效或無效數(shù)據(jù)的出現(xiàn)。作為控制比特位,DVB被相應(yīng)的數(shù)據(jù)傳輸邏輯用來控制從頂端相鄰?fù)ǖ赖臄?shù)據(jù)傳輸。
      在本發(fā)明的一個(gè)實(shí)施例中,DVB位為邏輯“1”,表示該通道數(shù)據(jù)寄存器中出現(xiàn)有效數(shù)據(jù)。例如,在俘獲通道401中,只要俘獲操作一完成,DVB位就被置為邏輯“1”。如圖20和圖22所示,當(dāng)數(shù)據(jù)傳人數(shù)據(jù)寄存器404(如從頂端相鄰?fù)ǖ?00),俘獲通道的數(shù)據(jù)傳輸邏輯430就置DVB位為邏輯“1”。
      此外,如果CPU13(見圖1)向任何被設(shè)為數(shù)據(jù)傳輸模式的數(shù)據(jù)通道的數(shù)據(jù)寄存器寫入時(shí),DVB位被自動(dòng)置邏輯“1”,顯示該數(shù)據(jù)有效。在本發(fā)明的一個(gè)實(shí)施例中,當(dāng)匹配通道處于匹配模式,向其數(shù)據(jù)寄存器寫入時(shí),匹配通道的DVB位亦被置邏輯“1”。
      在本發(fā)明的一個(gè)實(shí)施例中,DVB位邏輯“0”表示通道數(shù)據(jù)寄存器中出現(xiàn)無效數(shù)據(jù)。例如,在匹配通道400中,一旦匹配輸出事件發(fā)生,DVB位清為邏輯“0”。如圖20和圖22所示,當(dāng)數(shù)據(jù)從數(shù)據(jù)寄存器404傳入數(shù)據(jù)寄存器405(底端相鄰?fù)ǖ?,傳輸邏輯409清零俘獲通道401中的DVB位425為邏輯“0”。一旦數(shù)據(jù)被傳輸,通道401的DVB比特425被清零為邏輯“0”,顯示數(shù)據(jù)不再有效。
      此外,CPU13能通過清零相應(yīng)DVB位425為邏輯“0”,使數(shù)據(jù)寄存器404中的數(shù)據(jù)無效。為了清零DVB位425,CPU13必須先在確立態(tài)讀取DVB位425,然后必須向其寫入邏輯“1”。DVB位425為邏輯“1”顯示數(shù)據(jù)寄存器404中的數(shù)據(jù)為無效。應(yīng)注意由于DVB位既為狀態(tài)位又為控制位,CPU13對(duì)DVB位的清零動(dòng)作可能會(huì)引起有效數(shù)據(jù)被數(shù)據(jù)傳輸操作覆蓋。
      對(duì)本發(fā)明的一個(gè)實(shí)施例,圖23列出能置位和清零DVB位的操作。包括在各種操作模式下,對(duì)每種支持?jǐn)?shù)據(jù)傳輸操作的通道的操作。參考圖20和圖22,當(dāng)通道402被設(shè)置為數(shù)據(jù)傳輸模式,頂端相鄰?fù)ǖ赖腄VB位(通道401的DVB位)為邏輯“1”,通道本身的DVB位(如通道402的DVB位)為邏輯“0”時(shí),發(fā)生數(shù)據(jù)傳輸。通道的數(shù)據(jù)傳輸邏輯(如通道402的傳輸邏輯),首先從頂端相鄰的通道數(shù)據(jù)寄存器404,拷貝數(shù)據(jù)到該通道的數(shù)據(jù)寄存器405。接著頂端相鄰?fù)ǖ赖腄VB位(通道401的DVB比特位)被清零為邏輯“0”。最后該通道的DVB位被置為邏輯“1”。
      參考圖21和圖22,數(shù)據(jù)傳輸控制(DTC)比特位423-424被用來使能和禁止相應(yīng)的數(shù)據(jù)傳輸邏輯422,429,430。當(dāng)一個(gè)通道的數(shù)據(jù)傳輸邏輯被使能,頂端相鄰?fù)ǖ赖臄?shù)據(jù)寄存器的內(nèi)容可被傳輸至該通道的數(shù)據(jù)寄存器。當(dāng)一個(gè)通道的DVB位為邏輯“0”,且頂端相鄰?fù)ǖ赖腄VB位為邏輯“1”時(shí),數(shù)據(jù)傳輸開始。
      在數(shù)據(jù)傳輸操作的下列兩種模式下,產(chǎn)生輸出事件。(1)如果通道和其頂端相鄰?fù)ǖ赖腄VB位皆為邏輯“1”(表明兩通道都出現(xiàn)有效數(shù)據(jù)),開始傳輸數(shù)據(jù)并引起一個(gè)輸出事件。(這個(gè)輸出事件被稱為有效相鄰數(shù)據(jù)對(duì)(VADP)輸出事件)(2)如果通道和其頂端相鄰?fù)ǖ赖腄VB比特皆為邏輯“0”(表明兩通道都出現(xiàn)無效數(shù)據(jù)),開始傳輸數(shù)據(jù)并引起一個(gè)輸出事件。(這個(gè)輸出事件被稱為無效相鄰數(shù)據(jù)對(duì)(IADP)輸出事件)在本發(fā)明的一個(gè)實(shí)施例中,這兩種模式下輸出事件的目的(輸出事件導(dǎo)線)和輸出事件的類型(上升,下降,翻轉(zhuǎn)〕都不由軟件控制。這兩種輸出事件都與同一狀態(tài)總線414(見圖21,22)直接相連,且二者都引起一個(gè)觸發(fā)事件。
      圖24描述了由可進(jìn)行數(shù)據(jù)傳輸操作的通道中的數(shù)據(jù)傳輸控制位(DTC)(如圖21,22中的423-424)控制的數(shù)據(jù)傳輸操作模式。
      參照?qǐng)D21,22,數(shù)據(jù)輸出狀態(tài)位(DTS)427-428被用來標(biāo)志一個(gè)輸出事件已被相應(yīng)數(shù)據(jù)傳輸邏輯422,429,430產(chǎn)生。如果DTC=%10,且VADP檢測(cè)輸出事件已由相應(yīng)的事件傳輸邏輯產(chǎn)生,則DTS位被置為邏輯“1”。如果DTC=%11,且IADP檢測(cè)輸出事件已由相應(yīng)的事件傳輸邏輯產(chǎn)生,則DTS位被置為邏輯“0”。為了清零DTS比特427,CPU13必須先在確立態(tài)讀DTS位427,然后向其寫入邏輯“1”。
      下面將討論用來實(shí)現(xiàn)數(shù)據(jù)傳輸操作的控制信號(hào)。參照?qǐng)D21,22,圖中標(biāo)有大量的數(shù)據(jù)傳輸控制信號(hào),這些信號(hào)用來與(或來自)設(shè)置在數(shù)據(jù)傳輸操作模式的頂端相鄰?fù)ǖ劳ㄐ拧赏ǖ缆?lián)絡(luò)的三種途徑32/16-BIT數(shù)據(jù)線,讀信號(hào)線,清零信號(hào)線。32/16-BIT數(shù)據(jù)線用于通道的數(shù)據(jù)寄存器(如圖20中通道401的數(shù)據(jù)寄存器404)從頂端相鄰?fù)ǖ?如圖20的通道400)接收數(shù)據(jù)。
      讀信號(hào)用于通道的數(shù)據(jù)傳輸邏輯,與頂端相鄰?fù)ǖ赖腄VB位之間的通信。讀取的信息有兩個(gè)用途。第一,在數(shù)據(jù)傳輸操作時(shí),如果通道本身的DVB為邏輯“0”且頂端相鄰?fù)ǖ赖腄VB為邏輯“1”,那么開始傳輸數(shù)據(jù)。第二,當(dāng)通道被編程產(chǎn)生一個(gè)VADP或一個(gè)IADP輸出事件,讀信號(hào)用來決定是否存在一個(gè)有效或無效的相鄰數(shù)據(jù)對(duì)。
      清零信號(hào)被用于頂端相鄰?fù)ǖ溃跀?shù)據(jù)從該頂端相鄰?fù)ǖ赖臄?shù)據(jù)寄存器,傳至通道本身的數(shù)據(jù)寄存器之后,有條件地清零通道的DVB比特。
      應(yīng)注意圖22中數(shù)據(jù)傳輸通道有三種途徑與底端相鄰?fù)ǖ缆?lián)絡(luò)。它們是已經(jīng)提到的數(shù)據(jù),讀,寫信號(hào)線。在設(shè)計(jì)集成電路時(shí),如果讓數(shù)據(jù)傳輸通道(如圖20的400-402)電路彼此鄰接,則數(shù)據(jù),讀,寫信號(hào)線的布線可直接從一個(gè)通道,指向相鄰的另一個(gè)通道。在本發(fā)明的一個(gè)實(shí)施例中,可以讓每個(gè)數(shù)據(jù)傳輸通道,控制從相鄰?fù)ǖ乐帘旧頂?shù)據(jù)寄存器的數(shù)據(jù)傳輸。在本發(fā)明的可選實(shí)施例中,使用不同的狀態(tài)和控制寄存器比特,不同的數(shù)據(jù)傳輸控制信號(hào),在I/O集成電路22中采用不同的電路在相鄰?fù)ǖ篱g傳輸數(shù)據(jù)(見圖1)。
      在本發(fā)明的一個(gè)實(shí)施例中,所有數(shù)據(jù)傳輸通道都產(chǎn)生兩種類型的輸出事件一個(gè)有效相鄰數(shù)據(jù)對(duì)輸出事件(VADP),一個(gè)無效相鄰數(shù)據(jù)輸出事件(IADP)。此外,在本發(fā)明的一些實(shí)施例中,運(yùn)行于數(shù)據(jù)傳輸模式的俘獲和計(jì)數(shù)器通道,可以利用一個(gè)輸入事件清零俘獲或計(jì)數(shù)器通道本身的DVB比特(見圖21,22)。
      參考圖21,22,在本發(fā)明的一個(gè)實(shí)施例中,有效相鄰數(shù)據(jù)對(duì)(VADP),或無效相鄰數(shù)據(jù)對(duì)(IADP)輸出事件信號(hào),是輸出至狀態(tài)線414并產(chǎn)生一個(gè)觸發(fā)事件。VADP和IADP輸出事件,可被CPU13(見圖1)用來顯示一個(gè)堆棧滿或一個(gè)FIFO(先入先出隊(duì)列)空。管腳控制通道(PCC)對(duì)狀態(tài)線414(如管腳/控制總線76的狀態(tài)線)進(jìn)行監(jiān)控,它可被編程,在狀態(tài)線上的觸發(fā)事件被識(shí)別時(shí)引起中斷。
      俘獲通道或計(jì)數(shù)器通道的輸入事件邏輯可被編程,在進(jìn)行數(shù)據(jù)傳輸操作時(shí),使用一個(gè)輸入事件,清零相應(yīng)的DVB比特(見圖21,22中的清零DVB輸入事件信號(hào)431和433)。這對(duì)禁止一個(gè)FIFO隊(duì)列中的底層數(shù)據(jù)傳輸通道的數(shù)據(jù)極為有用,這樣位于底層數(shù)據(jù)通道之上的所有數(shù)據(jù)都可以沿一個(gè)通道向下傳輸。
      在計(jì)時(shí)器應(yīng)用中有三種基本的數(shù)據(jù)傳輸結(jié)構(gòu)。第一種數(shù)據(jù)傳輸結(jié)構(gòu)是堆棧,它保存俘獲的時(shí)基值和計(jì)數(shù)操作值。第二種數(shù)據(jù)傳輸結(jié)構(gòu)是時(shí)基值的FIFO隊(duì)列,用它來產(chǎn)生一系列匹配輸出事件。第三種數(shù)據(jù)傳輸結(jié)構(gòu)是保存大量最近俘獲的時(shí)基值,和最新計(jì)數(shù)操作值的FIFO隊(duì)列。本發(fā)明容許用戶編程設(shè)置這三種基本時(shí)基傳輸結(jié)構(gòu),來調(diào)整數(shù)據(jù)傳輸能力和一個(gè)或多個(gè)通道的操作。
      計(jì)數(shù)操作控制特征許多基于控制應(yīng)用的微控制器,需要對(duì)目標(biāo)信號(hào)進(jìn)行高精度的累加測(cè)量。例如圖2中的計(jì)數(shù)器通道58可對(duì)目標(biāo)信號(hào)進(jìn)行高精度的累加測(cè)量。目標(biāo)信號(hào)可由外部提供進(jìn)入輸入/輸出(I/O)集成電路22(見圖1),也可由內(nèi)部提供送入輸入/輸出(I/O)集成電路22。計(jì)數(shù)器通道58(見圖2)可進(jìn)行多種計(jì)數(shù)操作,并通過向它的一個(gè)或多個(gè)用戶可編程控制寄存器存儲(chǔ)比特67,寫入預(yù)置值來選擇操作方式。
      如圖26所示,作為第一個(gè)可編程選擇的操作,計(jì)數(shù)器通道58可根據(jù)目標(biāo)信號(hào)電平的“高”和“低”決定增加或減少計(jì)數(shù)值。第二,計(jì)數(shù)器通道58可在每次目標(biāo)信號(hào)的有效沿到達(dá)時(shí)增加計(jì)數(shù)值。有效沿可編程設(shè)定為目標(biāo)信號(hào)的上升沿或下降沿。第三,計(jì)數(shù)器通道可在有效沿首次到達(dá)時(shí)開始連續(xù)計(jì)數(shù)。第四,計(jì)數(shù)器通道58可在每次目標(biāo)信號(hào)的有效沿到達(dá)時(shí)減少計(jì)數(shù)值。本發(fā)明的可選實(shí)施例可使用別的計(jì)數(shù)操作。
      一些控制應(yīng)用需要由第二個(gè)通道(如匹配通道56,俘獲通道55,通道組87中的別的計(jì)數(shù)器通道)產(chǎn)生的第二路信號(hào),決定何時(shí)進(jìn)行目標(biāo)信號(hào)的計(jì)數(shù)操作。在現(xiàn)有技術(shù)中,如果計(jì)數(shù)器通道在一時(shí)間段內(nèi)對(duì)目標(biāo)信號(hào)進(jìn)行累加操作,第二路信號(hào)應(yīng)對(duì)目標(biāo)信號(hào)進(jìn)行選通,或者向中斷服務(wù)處理器產(chǎn)生一個(gè)中斷。中斷服務(wù)處理器將響應(yīng)中斷,選通計(jì)數(shù)器通道對(duì)目標(biāo)信號(hào)的計(jì)數(shù)操作。
      同樣在現(xiàn)有技術(shù)中,為了停止計(jì)數(shù)器通道對(duì)目標(biāo)信號(hào)的計(jì)數(shù),目標(biāo)信號(hào)選通的第二路信號(hào)應(yīng)變?yōu)闊o效,或者向中斷服務(wù)處理器產(chǎn)生一個(gè)中斷。中斷服務(wù)處理器將響應(yīng)中斷,中止計(jì)數(shù)器通道對(duì)目標(biāo)信號(hào)的計(jì)數(shù)操作。不幸的是,采用現(xiàn)有技術(shù)時(shí)常導(dǎo)致計(jì)數(shù)操作的累加錯(cuò)誤。
      如圖25所示在現(xiàn)有技術(shù)中,當(dāng)用第二路來中止計(jì)數(shù)器通道對(duì)目標(biāo)信號(hào)的計(jì)數(shù)操作,就引入了累加錯(cuò)誤。因?yàn)榈诙沸盘?hào)在目標(biāo)信號(hào)下降沿到來之前已變?yōu)闊o效,即計(jì)數(shù)器通道在目標(biāo)信號(hào)的一個(gè)周期結(jié)束之前就停止計(jì)數(shù)了。這樣存儲(chǔ)在現(xiàn)有技術(shù)計(jì)數(shù)器通道的周期累加值會(huì)低于正確值,其差值恰好為累加錯(cuò)誤的值。應(yīng)注意圖25,26中向上的箭頭指示計(jì)數(shù)器通道58作增數(shù)操作,向下的箭頭指示計(jì)數(shù)器通道58作減數(shù)操作。
      參考圖25,用現(xiàn)有技術(shù)在一時(shí)間段內(nèi)進(jìn)行周期累加,如在“計(jì)數(shù)窗口”內(nèi),”計(jì)數(shù)窗口“由計(jì)數(shù)窗口信號(hào)確立有效開始,反轉(zhuǎn)為無效結(jié)束。通常由第一個(gè)計(jì)數(shù)器通道對(duì)目標(biāo)信號(hào)事件計(jì)數(shù),由第二個(gè)通道產(chǎn)生計(jì)數(shù)窗口信號(hào)。第一個(gè)計(jì)數(shù)器通道可接收目標(biāo)信號(hào)和接收窗口信號(hào)。如圖25所示,計(jì)數(shù)窗口信號(hào)的確立開始狀態(tài)為“高”電平,目標(biāo)信號(hào)的有效沿為下降沿。
      參考圖25所示的采用現(xiàn)有技術(shù)進(jìn)行周期累加,當(dāng)計(jì)數(shù)窗口信號(hào)確立開始,第一個(gè)計(jì)數(shù)器通道在目標(biāo)信號(hào)緊接的有效沿開始計(jì)數(shù),并在計(jì)數(shù)窗口信號(hào)有效時(shí)不斷計(jì)數(shù)。當(dāng)?shù)谝粋€(gè)計(jì)數(shù)器通道接收到的計(jì)數(shù)窗口信號(hào)變?yōu)闊o效,第一個(gè)計(jì)數(shù)器通道立刻停止計(jì)數(shù)。這樣,如果計(jì)數(shù)窗口信號(hào)沒有在目標(biāo)信號(hào)的周期邊界上變?yōu)闊o效(如圖25所示),就會(huì)導(dǎo)致累加錯(cuò)誤。
      然而,本發(fā)明允許計(jì)數(shù)器通道接收第三個(gè)通道(如圖2中,匹配通道56,俘獲通道55,通道組87中別的計(jì)數(shù)器通道等)提供的第三路信號(hào),或者連至I/O集成電路22(見圖1) 的外部源提供的第三路信號(hào)。圖26中標(biāo)記為“計(jì)數(shù)停止信號(hào)”的第三路信號(hào),被計(jì)數(shù)器通道58接收來決定何時(shí)停止接收操作。應(yīng)注意對(duì)計(jì)數(shù)器通道58的使能和禁止不需處理器的任何中斷服務(wù)。此外,使用第三路信號(hào)來中止計(jì)數(shù)操作,允許計(jì)數(shù)操作停止在目標(biāo)信號(hào)的周期邊界,從而避免了累加錯(cuò)誤。
      作為計(jì)數(shù)停止信號(hào)的第三路信號(hào),提供了在一時(shí)間段內(nèi),準(zhǔn)確無誤累加目標(biāo)信號(hào)事件的途徑。應(yīng)注意在現(xiàn)有技術(shù)中,沒有辦法利用由外部或其它通道提供的第三路信號(hào),來增強(qiáng)中止計(jì)數(shù)操作。此外,利用第三路信號(hào)提供了不需中斷服務(wù)響應(yīng),便能準(zhǔn)確無誤測(cè)量一時(shí)間段內(nèi)目標(biāo)信號(hào)的累加值的有效途徑。
      應(yīng)注意在本發(fā)明的一些實(shí)施例中,目標(biāo)信號(hào)亦可用作計(jì)數(shù)停止信號(hào)。參考圖25,計(jì)數(shù)停止條件可編程設(shè)置為目標(biāo)信號(hào)的某一邊沿類型。例如通過向計(jì)數(shù)器通道58(見圖2)的控制寄存器存儲(chǔ)位67,寫入預(yù)置值來選擇計(jì)數(shù)停止信號(hào)為目標(biāo)信號(hào)的下降沿。這樣當(dāng)計(jì)數(shù)窗口信號(hào)反轉(zhuǎn)為無效,且計(jì)數(shù)停止事件發(fā)生時(shí)(如目標(biāo)信號(hào)的下降沿),計(jì)數(shù)器通道58停止計(jì)數(shù)。這樣,計(jì)數(shù)器通道58在計(jì)數(shù)窗口信號(hào)確立開始后,目標(biāo)信號(hào)的第一個(gè)下降沿開始計(jì)數(shù),在計(jì)數(shù)窗口信號(hào)反轉(zhuǎn)為無效后目標(biāo)信號(hào)的第一個(gè)下降沿停止計(jì)數(shù)。結(jié)果,計(jì)數(shù)器通道58測(cè)量并保存了非常精確的周期累加值,現(xiàn)有技術(shù)法無法與之相比。
      本發(fā)明允許利用第二路,第三路信號(hào)來優(yōu)化對(duì)目標(biāo)信號(hào)的計(jì)數(shù)操作計(jì)數(shù)操作由第二路信號(hào)定義的“計(jì)數(shù)窗口”選通,由第二路或第二路和用來限制第二路的第三路信號(hào)來中止。在某些情況下,目標(biāo)信號(hào)的邊沿可用作第三路信號(hào)。在一個(gè)實(shí)施例中,計(jì)數(shù)器通道58(見圖2)的控制寄存器存儲(chǔ)位67的某些位,被用來決定是否使用計(jì)數(shù)停止信號(hào)。而且有些位用來選擇中止計(jì)數(shù)操作的事件,是第三路信號(hào)(圖26中稱為計(jì)數(shù)停止信號(hào))事件,還是圖25所示的目標(biāo)信號(hào)事件,還是現(xiàn)有技術(shù)的計(jì)數(shù)窗口信號(hào)事件。在現(xiàn)有技術(shù)中,計(jì)數(shù)窗口信號(hào)的反轉(zhuǎn)總是用于中止計(jì)數(shù)操作。
      圖27給出了計(jì)數(shù)器通道58(見圖2)一部分的一個(gè)實(shí)施例。計(jì)數(shù)器通道包括一個(gè)計(jì)數(shù)器電路440和一個(gè)數(shù)據(jù)寄存器447。數(shù)據(jù)寄存器與總線24(見圖1)直接耦合。計(jì)數(shù)器電路440包括一個(gè)計(jì)數(shù)器441,一個(gè)控制電路442,另一個(gè)控制電路443??刂齐娐?42從線路448接收接收窗口信號(hào),從線路449接收計(jì)數(shù)停止信號(hào),從線路450接收目標(biāo)信號(hào)??刂齐娐?42通過線路444,向計(jì)數(shù)器提供計(jì)數(shù)使能信號(hào)??刂齐娐?43通過線路445,向計(jì)數(shù)器提供計(jì)數(shù)禁止信號(hào)。計(jì)數(shù)器441還從線路450上接收目標(biāo)信號(hào)。計(jì)數(shù)器441通過線路446向數(shù)據(jù)寄存器447提供計(jì)數(shù)值。
      控制和狀態(tài)信息通過導(dǎo)線451在計(jì)數(shù)器441,控制電路442,控制電路443之間傳輸。例如,控制電路442和443中的一個(gè)通過導(dǎo)線451,提供一個(gè)數(shù)據(jù)傳輸控制信號(hào)給計(jì)數(shù)器441。當(dāng)提供給計(jì)數(shù)器441的數(shù)據(jù)傳輸控制信號(hào)確立后,計(jì)數(shù)器441將現(xiàn)在的計(jì)數(shù)值通過導(dǎo)線446傳輸給數(shù)據(jù)寄存器447。數(shù)據(jù)寄存器447可通過總線24利用讀寫存取來訪問。計(jì)數(shù)器441通過導(dǎo)線452接受一個(gè)計(jì)時(shí)器信號(hào)??刂萍拇嫫鞔鎯?chǔ)比特位67通過導(dǎo)線453耦合給控制電路442和443。
      圖28顯示了寄存器67一部分的一個(gè)實(shí)施例(見圖2和圖27)。應(yīng)注意按照計(jì)數(shù)器通道58所選模式,一些寄存器比特位具有不同的功能。例如,當(dāng)計(jì)數(shù)窗口模式無效時(shí),CZO/WTO/DTO比特位被用作計(jì)數(shù)到零輸出比特位,當(dāng)計(jì)數(shù)窗口模式有效時(shí),被用作窗口終端輸出比特位,當(dāng)選擇數(shù)據(jù)傳輸模式時(shí),被用作數(shù)據(jù)傳輸輸出比特位。在一個(gè)實(shí)施例中,圖28所示控制寄存器比特位執(zhí)行下列功能。16/8和24/32-16-比特,8-和24-比特,或32-比特操作比特位46900-32-比特操作01-組合8-和24-比特操作1X-16-比特操作CCS計(jì)數(shù)器計(jì)時(shí)器選擇比特位4700-計(jì)數(shù)器利用輸入事件計(jì)時(shí)1-計(jì)數(shù)器利用計(jì)時(shí)器總線輸入計(jì)時(shí)DTC數(shù)據(jù)傳輸控制比特位4710X-計(jì)數(shù)模式有效10-w/VADP檢測(cè)輸出事件有效11-w/IADP檢測(cè)輸出事件有效CLK計(jì)時(shí)器總線源選擇比特位472000-111-計(jì)時(shí)器總線連線0-7SCC單個(gè)/連續(xù)計(jì)數(shù)操作比特位4730-連續(xù)計(jì)數(shù)操作1-單個(gè)計(jì)數(shù)操作CI計(jì)數(shù)輸入比特位0000-0111-管腳連線0-管腳連線71000-1111-狀態(tài)連線0-狀態(tài)連線7CIEL計(jì)數(shù)輸入邊沿或電平比特位475CCS=0X00-輸入無效X01-計(jì)數(shù)上升沿輸入事件X10-計(jì)數(shù)下降沿輸入事件X11-兩邊沿計(jì)數(shù)輸入事件CCS=1000-輸入無效001-利用計(jì)時(shí)器在上升沿開始010-利用計(jì)時(shí)器在下降沿開始011-利用計(jì)時(shí)器在任一沿開始100-利用計(jì)時(shí)器在輸入低開始101-利用計(jì)時(shí)器在輸入高開始110-利用計(jì)時(shí)器當(dāng)輸入低時(shí)計(jì)數(shù)111-利用計(jì)時(shí)器當(dāng)輸入高時(shí)計(jì)數(shù)USI/MTI/CDVI加計(jì)數(shù)停止輸入/模傳輸輸入/清零數(shù)據(jù)有效輸入比特位4760000-0111-管腳0-管腳71000-1111-狀態(tài)0-狀態(tài)7USIE/MTIE/CDVE加計(jì)數(shù)停止輸入邊沿/模傳輸輸入邊沿/清零數(shù)據(jù)有效邊沿比特位47700-輸入無效01-在上升沿停止cnt/Xfer mod/Clr DVB10-在下降沿停止cnt/Xfer mod/Clr DVB11-在任一沿停止cnt/Xfer mod/Clr DVBCZO/WTO/DTO計(jì)數(shù)到零輸出/窗口終端輸出/數(shù)據(jù)傳輸輸出比特位4780000-0111-管腳連線0-管腳連線71000-1111-狀態(tài)連線0-狀態(tài)連線7CZOEL/WTOEL/DTOE計(jì)數(shù)到零輸出邊沿或邏輯操作/窗口終端輸出邊沿或邏輯操作/數(shù)據(jù)傳輸輸出邊沿比特位479CZOEL/WTOEL000-輸出無效001-輸出一個(gè)上升沿010-輸出一個(gè)下降沿011-輸出一個(gè)翻轉(zhuǎn)100-條件與輸出置位管腳/狀態(tài)101-條件或輸出置位管腳/狀態(tài)110-條件與輸出清零管腳/狀態(tài)111-條件或輸出清零管腳/狀態(tài)DTOEX00-輸出無效X01-輸出一個(gè)上升沿X10-輸出一個(gè)下降沿X11-輸出一個(gè)翻轉(zhuǎn)圖29示出控制寄存器67(見圖27)一部分的一個(gè)實(shí)施例。在一個(gè)實(shí)施例中,圖29所示控制寄存器比特位執(zhí)行下列功能。CM計(jì)數(shù)器模式比特位4800-減計(jì)數(shù)模式1-加計(jì)數(shù)模式CWE計(jì)數(shù)窗口使能比特位48100-計(jì)數(shù)窗口操作無效01-利用所選狀態(tài)連線使能1X-利用來自低端相鄰雙FIFO通道(如可用)的輸入使能應(yīng)注意如果一個(gè)低端相鄰雙FIF0通道不存在并選擇CWE=1X,則窗口輸入總是低。WTOC窗口終端輸出控制比特位48200-計(jì)數(shù)到零輸出有效,窗口終端輸出無效01-計(jì)數(shù)到零輸出無效,窗口終端輸出對(duì)一個(gè)窗口內(nèi)第一個(gè)計(jì)數(shù)操作有效10-計(jì)數(shù)到零輸出有效,窗口終端輸出對(duì)一個(gè)窗口內(nèi)第一個(gè)計(jì)數(shù)操作有效11-計(jì)數(shù)到零輸出有效,窗口終端輸出對(duì)一個(gè)窗口內(nèi)任意計(jì)數(shù)操作有效OFC溢出控制比特位4830-溢出時(shí)停止在零1-溢出時(shí)繼續(xù)增加LCE邏輯補(bǔ)使能比特位4850-邏輯補(bǔ)輸出無效1-邏輯補(bǔ)輸出有效CWI計(jì)數(shù)窗口輸入比特位484000-111-狀態(tài)連線0-狀態(tài)連線7圖30顯示寄存器67(見圖27)一部分的一個(gè)實(shí)施例。應(yīng)注意在某些實(shí)施例中,寄存器67包括控制寄存器比特位和狀態(tài)寄存器比特位。在圖30所示實(shí)施例中,寄存器67的一部分用來存儲(chǔ)狀態(tài)信息。在一個(gè)實(shí)施例中,圖30所示狀態(tài)寄存器比特位執(zhí)行下列功能。
      WTS窗口終端狀態(tài)比特位4900-窗口內(nèi)一個(gè)單個(gè)計(jì)數(shù)操作,或第一個(gè)連續(xù)計(jì)數(shù)操作沒有被終止1-窗口內(nèi)一個(gè)單個(gè)計(jì)數(shù)操作,或第一個(gè)連續(xù)計(jì)數(shù)操作被終止USIS/MTS/CDVS加計(jì)數(shù)停止輸入狀態(tài)/模傳輸狀態(tài)/清零數(shù)據(jù)有效狀態(tài)比特位4910-停止計(jì)數(shù)器/模傳輸/清零數(shù)據(jù)有效沒有發(fā)生1-停止計(jì)數(shù)器/模傳輸/清零數(shù)據(jù)有效發(fā)生CZS/DTS計(jì)數(shù)到零狀態(tài)/數(shù)據(jù)傳輸狀態(tài)比特位4920-Inc/Dec到零或VADP/IADP沒有發(fā)生1-Inc/Dec到零或VADP/IADP發(fā)生DVB數(shù)據(jù)有效比特位4930-數(shù)據(jù)寄存器內(nèi)數(shù)據(jù)無效1-數(shù)據(jù)寄存器內(nèi)數(shù)據(jù)有效
      CIS計(jì)數(shù)輸入狀態(tài)比特位4940-加/減計(jì)數(shù)輸入沒有發(fā)生1-加/減計(jì)數(shù)輸入發(fā)生圖31顯示計(jì)數(shù)器441(見圖27)中的計(jì)數(shù)操作,與圖28-29所示一些控制寄存器比特位之間的關(guān)系。參照?qǐng)D31,當(dāng)CCS=0和CIEL=X01時(shí),計(jì)數(shù)窗口信號(hào)為高后,計(jì)數(shù)器441在每個(gè)上升邊沿輸入時(shí)增加。應(yīng)注意在計(jì)數(shù)窗口信號(hào)變?yōu)榈秃?,?jì)數(shù)器441繼續(xù)增加。計(jì)數(shù)窗口信號(hào)變?yōu)榈秃?,?dāng)?shù)谝粋€(gè)計(jì)數(shù)停止信號(hào)事件產(chǎn)生后,計(jì)數(shù)器441停止。在這一點(diǎn),計(jì)數(shù)操作完成,控制寄存器67中的加計(jì)數(shù)停止輸入狀態(tài)比特位被置位,計(jì)數(shù)值被傳輸給數(shù)據(jù)寄存器447,控制寄存器67中的DVB比特位被置位。
      當(dāng)CCS=1和CIEL=111時(shí),無論何時(shí)目標(biāo)信號(hào)是高和計(jì)數(shù)窗口信號(hào)時(shí)高,計(jì)數(shù)器441利用CLK比特字段所選的計(jì)時(shí)器輸入進(jìn)行加計(jì)數(shù)。此外,計(jì)數(shù)窗口信號(hào)變?yōu)榈秃?,?dāng)?shù)谝粋€(gè)計(jì)數(shù)停止信號(hào)事件產(chǎn)生時(shí),計(jì)數(shù)器441停止。當(dāng)CCS=1和CIEL=010,計(jì)數(shù)器441利用來自導(dǎo)線452的計(jì)時(shí)器信號(hào)進(jìn)行加計(jì)數(shù),當(dāng)計(jì)數(shù)窗口信號(hào)為高時(shí),在目標(biāo)信號(hào)的第一個(gè)下降邊沿開始計(jì)數(shù)操作。同樣,當(dāng)計(jì)數(shù)窗口信號(hào)反轉(zhuǎn)后,計(jì)數(shù)器441在第一個(gè)計(jì)數(shù)停止信號(hào)事件產(chǎn)生時(shí)停止。
      圖32顯示了計(jì)數(shù)器通道58(見圖2)的一部分的一個(gè)可選實(shí)施例。在這個(gè)實(shí)施例中,計(jì)數(shù)器通道58包括一個(gè)計(jì)數(shù)器寄存器460,一個(gè)事件寄存器461,和輸出事件邏輯467。在一個(gè)實(shí)施例中,計(jì)數(shù)器寄存器460可被分成能獨(dú)立操作的兩個(gè)計(jì)數(shù)器部分。第一個(gè)計(jì)數(shù)器部分響應(yīng)計(jì)數(shù)器控制邏輯462和輸入事件邏輯464。第二個(gè)計(jì)數(shù)器部分響應(yīng)計(jì)數(shù)器控制邏輯463和輸入事件邏輯465。在一個(gè)實(shí)施例中,每個(gè)計(jì)數(shù)器部分也有一套獨(dú)立的,如圖28和圖29所示的控制寄存器比特位。
      圖32所示各種控制和狀態(tài)比特位,盡管位于可存取讀寫寄存器內(nèi),也影響如圖32所示計(jì)數(shù)器通道58的行為。應(yīng)注意DTC寄存器比特位471,DVB寄存器比特位493,和DTS寄存器比特位492,以如圖20-24中和本說明的附帶部分所描述的同樣方式,用于通道間數(shù)據(jù)傳輸。
      應(yīng)注意在一個(gè)實(shí)施例中,如果計(jì)數(shù)器(如圖27中的計(jì)數(shù)器441)是一個(gè)減計(jì)數(shù)器時(shí),則不需要計(jì)數(shù)停止信號(hào)。在使用了一個(gè)減計(jì)數(shù)器的一些實(shí)施例中,一個(gè)全零的計(jì)數(shù)值可以用來指示應(yīng)停止計(jì)數(shù)操作。這樣對(duì)于一個(gè)減計(jì)數(shù)器,一個(gè)全零的計(jì)數(shù)值可以執(zhí)行與加計(jì)數(shù)器中的一個(gè)計(jì)數(shù)停止信號(hào)同樣的功能。這樣,在計(jì)數(shù)窗口信號(hào)反轉(zhuǎn)后,當(dāng)計(jì)數(shù)值第一次達(dá)到全零時(shí),一個(gè)減計(jì)數(shù)器停止計(jì)數(shù)。
      俘獲窗口特征許多基于微控制器的控制應(yīng)用要求一個(gè)時(shí)基值,該時(shí)基值僅在一個(gè)目標(biāo)信號(hào)的上升沿,下降沿,或在兩者處俘獲。例如,基于所選一個(gè)目標(biāo)信號(hào)的邊沿產(chǎn)生的時(shí)間,利用圖2中的俘獲通道55從計(jì)時(shí)器總線71俘獲時(shí)基值。目標(biāo)信號(hào)可從外到輸入/輸出(I/O)集成電路22(見圖1)提供,或產(chǎn)生給內(nèi)至I/O集成電路22。俘獲通道55可執(zhí)行各種俘獲操作,該操作可由預(yù)先寫入俘獲通道55(見圖2,5,35和36)中,一個(gè)或更多個(gè)用戶可編程控制寄存器存儲(chǔ)比特位66的控制值來選擇。
      許多控制應(yīng)用要求一個(gè)由一個(gè)第二通道產(chǎn)生的第二信號(hào),用于基于一個(gè)目標(biāo)信號(hào)產(chǎn)生的時(shí)間,來規(guī)定何時(shí)俘獲一個(gè)時(shí)基值和何時(shí)不俘獲一個(gè)時(shí)基值。例如,參照?qǐng)D2,這個(gè)產(chǎn)生第二信號(hào)的第二通道可以是通道54,它可以是一個(gè)匹配通道,一個(gè)計(jì)數(shù)器通道,或通道57中另一個(gè)其它類型的工作通道。理想情況下,時(shí)基值俘獲的使能和禁止不應(yīng)由一個(gè)處理器(如圖1中的CPU13)要求直接服務(wù),并且俘獲時(shí)基值應(yīng)與目標(biāo)信號(hào)的頻率一致無關(guān)。
      然而,在現(xiàn)有技術(shù)控制應(yīng)用中,要求第二信號(hào)產(chǎn)生一個(gè)中斷,要求引入一個(gè)處理器(如圖1中的CPU13)執(zhí)行的中斷服務(wù)例程,用于在俘獲通道內(nèi)使能俘獲操作。此外,為在俘獲通道內(nèi)禁止俘獲操作,要求第二信號(hào)產(chǎn)生一個(gè)中斷,要求引入中斷服務(wù)例程,用于在俘獲通道內(nèi)禁止俘獲操作。
      另外,為保持俘獲時(shí)基值的一致,現(xiàn)有技術(shù)的控制應(yīng)用一般要求中斷服務(wù)處理,用于在下一個(gè)目標(biāo)信號(hào)的觸發(fā)沿之前,將每個(gè)俘獲時(shí)基值傳輸給一個(gè)鎖存器或存儲(chǔ)器。這樣如果目標(biāo)信號(hào)的頻率足夠高時(shí),中斷服務(wù)例程并不總是能夠在下一個(gè)目標(biāo)信號(hào)的觸發(fā)沿產(chǎn)生之前,將俘獲時(shí)基值傳輸給一個(gè)鎖存器或存儲(chǔ)器,因而失去俘獲時(shí)基值的一致性。
      圖33顯示出一個(gè)第二信號(hào),即所謂一個(gè)俘獲窗口信號(hào),是如何用于規(guī)定從一個(gè)計(jì)時(shí)器總線俘獲時(shí)基值。作為一個(gè)第一可編程選擇,俘獲通道55可以基于目標(biāo)信號(hào)的上次事件(即上次觸發(fā)沿)俘獲和存儲(chǔ)一個(gè)時(shí)基值。觸發(fā)沿可以編程選擇為目標(biāo)信號(hào)的上升沿,下降沿或任意沿。第二,俘獲通道55與“N-1”其他俘獲通道一起,可以俘獲和存儲(chǔ)“N”時(shí)基值,每個(gè)時(shí)基值對(duì)應(yīng)一個(gè)“N”上一次目標(biāo)信號(hào)觸發(fā)沿。第三,俘獲通道55與“N-1”其他俘獲通道一起,可以俘獲和存儲(chǔ)“N”時(shí)基值,每個(gè)時(shí)基值對(duì)應(yīng)一個(gè)“N”上一次目標(biāo)信號(hào)正邊沿。另外,俘獲通道55與“N-1”其他俘獲通道一起,可以俘獲和存儲(chǔ)“N”時(shí)基值,每個(gè)時(shí)基值對(duì)應(yīng)一個(gè)“N”上一次目標(biāo)信號(hào)負(fù)邊沿。第四,俘獲通道55與“N-1”其他俘獲通道一起,可以俘獲和存儲(chǔ)“N”時(shí)基值,每個(gè)時(shí)基值對(duì)應(yīng)一個(gè)“N”第一次目標(biāo)信號(hào)觸發(fā)沿。在本發(fā)明的一個(gè)實(shí)施例中,使用了兩個(gè)俘獲通道,則數(shù)目“N”是2。本段中使用的“N”代表一個(gè)正整數(shù)。本發(fā)明的可選實(shí)施例可以使用其他俘獲操作。
      如上所述,俘獲窗口特征消除了一個(gè)處理器(如圖1中的CPU13)服務(wù)介入的需要,并提供一個(gè)數(shù)據(jù)相關(guān),而與目標(biāo)信號(hào)頻率無關(guān)。俘獲窗口特征允許一個(gè)俘獲通道直接接收激勵(lì)(即俘獲窗口信號(hào)),來決定何時(shí)俘獲時(shí)基,何時(shí)不俘獲。因此,一個(gè)處理器(如圖1中的CPU13)的中斷服務(wù)被大大減少,并保持俘獲時(shí)基值的一致,并與目標(biāo)信號(hào)的頻率無關(guān)。
      俘獲窗口特征允許一個(gè)俘獲通道對(duì)時(shí)基值的俘獲,由一個(gè)第二信號(hào)的邏輯狀態(tài)來規(guī)定,該信號(hào)稱為一個(gè)俘獲窗口信號(hào),這樣時(shí)基值的俘獲可以在第二信號(hào)定義的窗口期間被使能。
      一個(gè)俘獲窗口使能寄存器比特位(圖35中的CWE501)被用于使能俘獲窗口特征。一個(gè)俘獲窗口是一個(gè)時(shí)段或時(shí)間/角度的“窗口”,其中執(zhí)行時(shí)基俘獲操作。當(dāng)俘獲窗口比特位被置位時(shí),基于目標(biāo)信號(hào)邊沿的時(shí)基俘獲由一個(gè)第二信號(hào)的狀態(tài)來規(guī)定,該信號(hào)稱為俘獲窗口信號(hào)。屬于目標(biāo)信號(hào)的時(shí)基俘獲,當(dāng)俘獲窗口信號(hào)狀態(tài)確立時(shí)(圖33-34中的邏輯電平1)被允許,當(dāng)?shù)诙盘?hào)狀態(tài)反轉(zhuǎn)時(shí)(圖33-34中的邏輯電平0)被禁止。
      圖34顯示使用俘獲窗口特征,和使用位于俘獲通道55(見圖2)的寄存器66的某些寄存器控制比特位的一個(gè)例子。在這個(gè)例子中,俘獲窗口使能比特位(圖35中的CWE501)被置位,因而使能俘獲窗口特征。俘獲通道55在目標(biāo)信號(hào)的每個(gè)上升沿產(chǎn)生時(shí),俘獲在計(jì)時(shí)器總線71(見圖2)上的時(shí)基值。應(yīng)注意,盡管如此,俘獲通道55也僅在俘獲窗口信號(hào)確立和所選目標(biāo)信號(hào)邊沿產(chǎn)生時(shí),俘獲在計(jì)時(shí)器總線71上的時(shí)基值。因此,俘獲窗口信號(hào)被確立的時(shí)段定義了允許俘獲的“窗口”。當(dāng)俘獲窗口信號(hào)反轉(zhuǎn)時(shí),進(jìn)一步的目標(biāo)信號(hào)時(shí)基俘獲被禁止。
      應(yīng)注意圖34所示例子中,俘獲窗口信號(hào)通過管腳/狀態(tài)總線75,或從底端相鄰雙FIFO通道(如被實(shí)現(xiàn))被提供給俘獲通道55。在一個(gè)實(shí)施例中,一個(gè)雙FIFO通道是一個(gè)工作通道,能夠作為一個(gè)雙重深度(two-deep)FIFO用于存儲(chǔ)數(shù)值。例如,參照?qǐng)D20,計(jì)數(shù)器通道402可以被一個(gè)雙FIFO通道所取代,這樣作為底端相鄰雙FIFO通道用于俘獲通道401。如果CWE比特位501選擇管腳/狀態(tài)總線75,作為俘獲窗口信號(hào)的來源,則利用CWI比特位505,來選擇管腳/狀態(tài)總線導(dǎo)線75中的哪一個(gè)被用于向俘獲通道55提供俘獲窗口信號(hào)。如果CWE比特位501選擇底端相鄰雙FIFO通道作為俘獲窗口信號(hào)的來源,則CWI比特位505被忽略。應(yīng)注意,如果底端相鄰?fù)ǖ啦皇且粋€(gè)雙FIFO通道,而且CWE比特位505被編程選擇一個(gè)底端相鄰雙FIFO通道,則俘獲窗口保持無效。
      仍參照?qǐng)D34所示例子,利用寄存器66(見圖35)中的CI比特位506,來選擇管腳/狀態(tài)總線導(dǎo)線75中的哪一個(gè)被用于向俘獲通道55提供俘獲目標(biāo)信號(hào)。利用CIE比特位507來選擇俘獲目標(biāo)信號(hào)的哪一個(gè)邊沿,所謂上升沿,下降沿,或任一邊沿,被用于觸發(fā)從計(jì)時(shí)器總線71俘獲時(shí)基值。而且,利用CTB比特位503,來選擇俘獲通道55從計(jì)時(shí)器總線71俘獲哪一個(gè)時(shí)基值。
      圖35顯示了寄存器66(見圖2和圖27)的一部分的一個(gè)實(shí)施例。應(yīng)注意基于為俘獲通道55所選的模式,一些寄存器比特位可以有一個(gè)不同的功能。例如,當(dāng)俘獲窗口模式被使能時(shí),CI/CDVI比特位506用作俘獲輸入比特位,當(dāng)選擇數(shù)據(jù)傳輸模式時(shí),用作清零數(shù)據(jù)有效輸入比特位。在一個(gè)實(shí)施例中,圖35所示控制寄存器比特位執(zhí)行下列功能。
      16/3216-比特或32-比特功能比特位5000-32-比特1-16-比特CWE俘獲窗口使能比特位50100-俘獲窗口無效01-利用CWI比特字段所選狀態(tài)線使能俘獲窗口1x-利用從底端相鄰雙FIFO通道(如果可用)的輸入使能俘獲窗口DTC數(shù)據(jù)傳輸控制比特位5020x-數(shù)據(jù)傳輸無效;俘獲有效10-VADP11-IADPCTB俘獲時(shí)基比特位503000-111時(shí)基0-7SCC單個(gè)/連續(xù)俘獲比特位5040-連續(xù)俘獲操作1-單個(gè)俘獲操作CWI俘獲窗口輸入比特位505000-111狀態(tài)總線0-7CI/CDVI俘獲輸入/清零數(shù)據(jù)有效輸入比特位5060000-0111管腳總線0-71000-1111狀態(tài)總線0-7CIE/CDVE俘獲輸入邊沿/清零數(shù)據(jù)有效邊沿比特位50700-輸入無效01-上升沿10-下降沿11-任一沿
      CO/DTO俘獲輸出/數(shù)據(jù)傳輸輸出比特位508000-111狀態(tài)線0 7COE/DTOE俘獲輸出邊沿/數(shù)據(jù)傳輸輸出邊沿比特位50900-輸出無效01-上升沿10-下降沿11-翻轉(zhuǎn)圖36顯示寄存器66(見圖2)的一部分的一個(gè)實(shí)施例。應(yīng)注意在一些實(shí)施例中,寄存器66包括控制寄存器比特位和狀態(tài)寄存器比特位兩者。在圖36所示實(shí)施例中,寄存器66的一部分用于存儲(chǔ)狀態(tài)信息。在一個(gè)實(shí)施例中,圖36所示狀態(tài)寄存器比特位執(zhí)行下列功能。
      CES俘獲邊沿狀態(tài)比特位5100-檢測(cè)到一個(gè)下降沿輸入事件,產(chǎn)生相關(guān)的俘獲操作1-檢測(cè)到一個(gè)上升沿輸入事件,產(chǎn)生相關(guān)的俘獲操作CDVS清零數(shù)據(jù)有效狀態(tài)比特位5110-沒有檢測(cè)到DVB=1的規(guī)定輸入事件1-檢測(cè)到DVB=1的規(guī)定輸入事件COS俘獲輸出狀態(tài)比特位5120-俘獲操作沒有產(chǎn)生或COE比特字段=001-俘獲操作產(chǎn)生和COE比特字段=00DTS數(shù)據(jù)傳輸輸出狀態(tài)比特位5120-沒有檢測(cè)到符合VADP或IADP的條件1-檢測(cè)到符合VADP或IADP的條件DVB數(shù)據(jù)有效比特位513
      0-數(shù)據(jù)寄存器中的數(shù)據(jù)無效1-數(shù)據(jù)寄存器中的數(shù)據(jù)有效CIS俘獲輸入狀態(tài)/清零數(shù)據(jù)有效狀態(tài)比特位5140-沒有產(chǎn)生一個(gè)俘獲1-產(chǎn)生一個(gè)俘獲圖37顯示俘獲通道55(見圖2)的一部分的一個(gè)實(shí)施例。在這個(gè)實(shí)施例中,俘獲通道55包括一個(gè)數(shù)據(jù)寄存器520,俘獲邏輯521,數(shù)據(jù)傳輸邏輯522,單個(gè)/連續(xù)俘獲邏輯523,輸出事件邏輯524,輸入事件邏輯525,和16/32比特邏輯526。
      圖37所示各種控制和狀態(tài)比特位,盡管位于可存取讀寫寄存器內(nèi),也影響如圖37所示俘獲通道55的行為。應(yīng)注意DTC寄存器比特位502,DVB寄存器比特位513,和DTS寄存器比特位512,以如圖20-24中和本說明的附帶部分所描述的同樣方式,用于通道間數(shù)據(jù)傳輸。
      一個(gè)單個(gè)/連續(xù)操作計(jì)時(shí)器通道的特征在I/O集成電路22(見圖1)的一個(gè)實(shí)施例中,每個(gè)工作通道都有一個(gè)單個(gè)操作模式和一個(gè)連續(xù)傳輸模式。在本發(fā)明的一個(gè)實(shí)施例中,每個(gè)計(jì)數(shù)器通道(如計(jì)數(shù)器通道58),每個(gè)俘獲通道(如俘獲通道55),和每個(gè)匹配通道(如匹配通道57)都有一個(gè)用戶可編程寄存器比特位,允許以單個(gè)模式或連續(xù)模式操作通道。
      例如,單個(gè)/連續(xù)計(jì)數(shù)操作(SCC)寄存器比特位473(見圖28),決定計(jì)數(shù)器通道58(見圖2)是在單個(gè)操作模式還是在連續(xù)操作模式。單個(gè)/連續(xù)俘獲操作(SCC)寄存器比特位504(見圖35),決定俘獲通道55(見圖2)是在單個(gè)操作模式還是在連續(xù)操作模式。而且,單個(gè)/連續(xù)匹配操作(SCM)寄存器比特位531(見圖38),決定匹配通道57(見圖2)是在單個(gè)操作模式還是在連續(xù)操作模式。
      在進(jìn)入單個(gè)操作模式時(shí),相關(guān)的計(jì)時(shí)器功能狀態(tài)比特位(如圖30中的計(jì)數(shù)輸入狀態(tài)(CIS)比特位494,圖36中的俘獲輸出狀態(tài)(COS)比特位512,和圖39中的匹配狀態(tài)(MS)比特位534)將被清零,而提供計(jì)時(shí)器功能的狀態(tài)和控制。當(dāng)工作通道為單個(gè)操作模式設(shè)置時(shí),如果相關(guān)計(jì)時(shí)器功能狀態(tài)比特位被置位,通道將被禁止,如果相關(guān)計(jì)時(shí)器功能狀態(tài)比特位被清零,通道被使能。
      不幸的是盡管如此,對(duì)一個(gè)單個(gè)操作模式/連續(xù)操作模式工作通道,仍有三個(gè)問題。第一個(gè)問題是從一個(gè)連續(xù)操作模式到一個(gè)單個(gè)操作模式的一致轉(zhuǎn)換。第二個(gè)問題是在單個(gè)操作模式時(shí),防止一個(gè)匹配通道意外的再使能。第三個(gè)問題是在連續(xù)操作模式中,防止基于從一個(gè)匹配通道的冗余匹配事件的多重輸出。
      從一個(gè)連續(xù)操作模式到一個(gè)單個(gè)操作模式一致轉(zhuǎn)換的問題以下列方式解決。當(dāng)在單個(gè)操作模式(即“單個(gè)命中”匹配,俘獲等)執(zhí)行計(jì)時(shí)器功能時(shí),與計(jì)時(shí)器功能相關(guān)的狀態(tài)比特位,(即圖30中的CIS比特位494,圖36中的COS比特位512,和圖39中的MS比特位534),顯示計(jì)時(shí)器功能是有效還是無效。在一個(gè)實(shí)施例中,如果狀態(tài)比特位被清零,計(jì)時(shí)器功能被使能,如果狀態(tài)比特位被置位,計(jì)時(shí)器功能被禁止。結(jié)果是狀態(tài)比特位“控制”計(jì)時(shí)器功能的操作。
      當(dāng)在一個(gè)連續(xù)操作模式(即“連續(xù)”匹配,俘獲等)執(zhí)行計(jì)時(shí)器功能時(shí),與計(jì)時(shí)器功能相關(guān)的同一個(gè)狀態(tài)比特位顯示一個(gè)或更多事件(即匹配,俘獲等)是否產(chǎn)生。狀態(tài)比特位僅提供操作信息,而不以任何方式影響或控制計(jì)時(shí)器功能。
      當(dāng)從連續(xù)操作模式轉(zhuǎn)換到單個(gè)操作模式時(shí),同樣與計(jì)時(shí)器功能相關(guān)的狀態(tài)比特位,必須從執(zhí)行一個(gè)“狀態(tài)”功能轉(zhuǎn)換到一個(gè)“狀態(tài)和控制”功能。非常類似于當(dāng)工作通道是在連續(xù)操作模式時(shí),狀態(tài)比特位將已被置位。當(dāng)轉(zhuǎn)換到單個(gè)操作模式時(shí),如果狀態(tài)比特位保持置位,工作通道將立即禁止自己,而不用已執(zhí)行一個(gè)計(jì)時(shí)器功能。如果工作通道在進(jìn)入單個(gè)操作模式時(shí)變?yōu)闊o效,可能通道將丟失“激勵(lì)”,因而導(dǎo)致從連續(xù)到單個(gè)操作模式的一個(gè)不一致的轉(zhuǎn)換。
      工作通道電路使得相關(guān)的狀態(tài)比特位,在進(jìn)入單個(gè)操作模式時(shí)清零自己,然后允許該狀態(tài)比特位執(zhí)行一個(gè)“狀態(tài)和控制”功能。工作通道電路在連續(xù)和單個(gè)操作模式中都使用同樣的狀態(tài)比特位,盡管使用狀態(tài)比特位的方法按照模式而不同。另外,當(dāng)在兩模式間轉(zhuǎn)換時(shí),對(duì)工作通道的激勵(lì)將不會(huì)丟失,在這一點(diǎn)上兩模式間的轉(zhuǎn)換是一致的。
      在單個(gè)操作模式時(shí),防止一個(gè)匹配通道意外的再使能的問題以下列方式解決。當(dāng)一個(gè)匹配通道(如圖2和圖40中的匹配通道57)工作在單個(gè)操作模式時(shí)(即僅允許產(chǎn)生一個(gè)真比較,然后禁止匹配通道),在相關(guān)匹配狀態(tài)比特位(如圖39中的MS比特位534)顯示一個(gè)匹配沒有產(chǎn)生時(shí)(MS=%0),匹配通道將被使能。當(dāng)相關(guān)匹配狀態(tài)比特位顯示一個(gè)匹配產(chǎn)生時(shí)(MS=%1),匹配通道將被禁止。
      在某些情況中,需要清零匹配狀態(tài)比特位并且不再使能匹配通道。匹配通道電路通過僅清零匹配狀態(tài)比特位,來防止匹配通道被再使能。為了再使能匹配通道,匹配狀態(tài)比特位必須被清零,并且數(shù)據(jù)寄存器(如圖40中的數(shù)據(jù)寄存器540)必須被寫入。這樣提供了一個(gè)一致的方式,用于CPU13(見圖1)控制匹配通道(即改變控制寄存器中存儲(chǔ)的控制值,改變匹配寄存器(如圖40中的540)中存儲(chǔ)的數(shù)據(jù)值,和反轉(zhuǎn)匹配狀態(tài)比特位),而不用再使能匹配通道。這是一個(gè)有用的特征,允許CPU13(見圖1)清零匹配狀態(tài)比特位,而不用再使能匹配功能。
      防止當(dāng)在連續(xù)操作模式時(shí),基于冗余匹配事件的多重輸出的問題以下列方式解決。在連續(xù)操作模式,當(dāng)一個(gè)匹配通道對(duì)一個(gè)“慢”時(shí)基(即以低于匹配速率一半的頻率增加)進(jìn)行匹配時(shí),可能對(duì)于同一個(gè)時(shí)基值有多重比較。當(dāng)時(shí)基值等于數(shù)據(jù)寄存器中的值并在多重比較中保持相同時(shí),數(shù)據(jù)寄存器將在每次執(zhí)行一個(gè)比較時(shí),確立一個(gè)真比較。
      需要在時(shí)基值和匹配寄存器中的值進(jìn)行匹配時(shí),僅確立一個(gè)輸出,而不管產(chǎn)生了多少“真比較”信號(hào)。匹配通道電路僅允許下列真比較信號(hào)產(chǎn)生一個(gè)輸出(1)從上次假比較后第一個(gè)真比較;和(2)從匹配寄存器在它的數(shù)據(jù)寄存器接收到新數(shù)據(jù)(即被CPU13寫入或從一個(gè)相鄰?fù)ǖ纻鬏斶M(jìn)來)后,第一個(gè)真比較。當(dāng)?shù)谝粋€(gè)真匹配產(chǎn)生時(shí),一個(gè)連續(xù)匹配相關(guān)被置位(禁止匹配),在對(duì)相同時(shí)基,上次真比較后第一個(gè)真匹配產(chǎn)生時(shí),或在連續(xù)模式(即SCM=%0和MOD=%000)匹配被禁止時(shí),該相關(guān)被清零(使能匹配)。結(jié)果是將不產(chǎn)生冗余匹配,而與匹配時(shí)基頻率無關(guān)。
      圖38所示寄存器65(見圖2)的一部分的一個(gè)實(shí)施例。在一個(gè)實(shí)施例中,圖38所示控制寄存器比特位執(zhí)行下列功能。
      12/16/3212/半字/字選擇比特位529
      0x-32-比特(字)10-12-比特11-16-比特MTB匹配時(shí)基比特位530000-111時(shí)基0-7SCM單個(gè)/連續(xù)匹配比特位5310-連續(xù)匹配操作1-單個(gè)匹配操作MO匹配輸出比特位5320000-0111管腳總線0-71000-1111狀態(tài)總線0-7MOE匹配輸出邊沿比特位533000-輸出和相等比較被禁止001-輸出一個(gè)上升沿010-輸出一個(gè)下降沿011-輸出一個(gè)翻轉(zhuǎn)100-條件與輸出置位管腳/狀態(tài)101-條件或輸出置位管腳/狀態(tài)110-條件與輸出清零管腳/狀態(tài)111-條件或輸出清零管腳/狀態(tài)圖39顯示寄存器65(見圖27)的一部分的一個(gè)實(shí)施例。應(yīng)注意在一些實(shí)施例中,寄存器65包括控制寄存器比特位和狀態(tài)寄存器比特位。在圖39所示實(shí)施例中,寄存器65的一部分被用于存儲(chǔ)狀態(tài)信息。在一個(gè)實(shí)施例中,圖39所示狀態(tài)寄存器比特位執(zhí)行下列功能。
      MS匹配狀態(tài)
      0-沒有產(chǎn)生一個(gè)匹配1-產(chǎn)生一個(gè)匹配事件圖40顯示匹配通道57(見圖2)的一部分的一個(gè)實(shí)施例。在這個(gè)實(shí)施例中,匹配通道57包括一個(gè)數(shù)據(jù)寄存器540,相等比較器邏輯541,12/16/32選擇邏輯542,匹配邏輯543,和輸出事件邏輯544。在一個(gè)實(shí)施例中,數(shù)據(jù)寄存器540可分為兩部分,稱為一個(gè)上部分和一個(gè)下部分,兩者可以獨(dú)立操作。在一個(gè)實(shí)施例中,每個(gè)匹配部分都有獨(dú)立的一套如圖38和圖39所示的控制和狀態(tài)寄存器比特位, 當(dāng)僅有一套控制劃分的12/16/32選擇比特位529時(shí)除外。第一匹配部分使用數(shù)據(jù)寄存器540,相等比較器邏輯541,匹配邏輯543,和輸出事件邏輯544的第一部分;第二匹配部分使用數(shù)據(jù)寄存器540,相等比較器邏輯541,匹配邏輯543,和輸出事件邏輯544的第二部分。
      圖40所示各種控制和狀態(tài)比特位,盡管位于可存取讀寫寄存器內(nèi),也影響如圖40所示匹配通道57的行為。應(yīng)注意在圖40所示實(shí)施例中,匹配通道57不包括被用來執(zhí)行相鄰?fù)ǖ篱g數(shù)據(jù)傳輸?shù)募拇嫫鞅忍匚缓碗娐?。然而,參照?qǐng)D40和圖37,在本發(fā)明的可選實(shí)施例中,匹配通道57可以包括數(shù)據(jù)傳輸邏輯和寄存器比特位DTC,DVB,和DTS,用于執(zhí)行與俘獲通道55中數(shù)據(jù)傳輸邏輯522和寄存器比特位DTC471,DVB493和DTS492同樣的功能。如果實(shí)現(xiàn),將以如圖20-24中和本說明的附帶部分所描述的同樣方式,產(chǎn)生來自或去往一個(gè)匹配通道的數(shù)據(jù)傳輸。
      仍參照?qǐng)D40,匹配通道57支持單個(gè)和連續(xù)匹配操作。當(dāng)以單個(gè)或連續(xù)匹配操作運(yùn)行時(shí),數(shù)據(jù)寄存器540中的值與來自計(jì)時(shí)器總線71的八個(gè)值中的一個(gè)相比較。輸出事件可被編程為被產(chǎn)生和提供給管腳/狀態(tài)總線76。匹配通道57的一個(gè)實(shí)施例的操作,現(xiàn)在將根據(jù)操作目的,設(shè)置操作的控制比特位,和產(chǎn)生的輸出事件來加以描述。
      在單個(gè)和連續(xù)匹配操作中,匹配產(chǎn)生在有效數(shù)據(jù),和來自計(jì)時(shí)器總線71的一個(gè)值(任一個(gè)32-比特或一個(gè)12/16比特時(shí)基值)之間。時(shí)基值由對(duì)MTB寄存器比特位530(見圖38)編程來選擇。時(shí)基值比特位的數(shù)目由對(duì)12/16/32選擇比特位529編程來選擇。例如,如果選擇12-比特操作,時(shí)基值的低12比特位和數(shù)據(jù)寄存器540中數(shù)值的低12比特位,將由相同比較器541進(jìn)行比較。
      如果MOE比特位不等于%000,和數(shù)據(jù)寄存器540中的值不等于來自計(jì)時(shí)器總線71上的時(shí)基值,這時(shí)產(chǎn)生一個(gè)匹配,MS比特位34(見圖39)被置位。產(chǎn)生一個(gè)輸出事件,并提供給管腳/狀態(tài)總線導(dǎo)線76中的一個(gè)。輸出事件的種類由對(duì)MOE比特位533(見圖38)編程來選擇。如果MOE比特位等于%000,輸出事件邏輯544和相等比較器541被禁止。輸出事件的目的由對(duì)MO比特位532(見圖38)編程來選擇。
      單個(gè)/連續(xù)匹配(SCM)比特位531(見圖38)用于在CPU13(見圖1)軟件服務(wù)間,選擇匹配通道僅產(chǎn)生一個(gè)輸出事件(即單個(gè)操作模式),還是產(chǎn)生多于一個(gè)輸出事件(即連續(xù)操作模式)。
      當(dāng)單個(gè)/連續(xù)匹配(SCM)比特位531(見圖38)是%1時(shí),選擇單個(gè)匹配操作。在單個(gè)匹配操作,當(dāng)來自計(jì)時(shí)器總線71的時(shí)基值,和存儲(chǔ)在數(shù)據(jù)寄存器540的數(shù)值相等時(shí),在管腳/狀態(tài)總線76上產(chǎn)生一個(gè)輸出事件,并且確立單個(gè)匹配相關(guān)機(jī)制來防止冗余匹配。后續(xù)輸出事件僅在解除單個(gè)匹配相關(guān)機(jī)制后才能產(chǎn)生。需要下面兩個(gè)操作來解除單個(gè)匹配相關(guān)機(jī)制(可以任意次序執(zhí)行這兩個(gè)操作)(1)匹配狀態(tài)(MS)比特位534(見圖39)在確立狀態(tài)(即一個(gè)邏輯電平1)被讀取,而反轉(zhuǎn)后的狀態(tài)(即邏輯電平0)被寫回MS比特位534;和(2)一個(gè)數(shù)值被寫入數(shù)據(jù)寄存器540。
      應(yīng)注意CPU13(見圖1)被用來執(zhí)行單個(gè)匹配相關(guān)機(jī)制要求的讀寫存取。另外,由于以下原因,需要操作(2)來解除單個(gè)匹配相關(guān)機(jī)制。如果存在產(chǎn)生輸出事件的多重匹配通道,和在相同管腳/狀態(tài)總線導(dǎo)線76上的中斷請(qǐng)求,操作(2)允許對(duì)任意匹配通道清零MS比特位534,這樣清零中斷源的狀態(tài)而無需再使能通道。
      當(dāng)單個(gè)/連續(xù)匹配(SCM)比特位531(見圖38)是%0時(shí),選擇連續(xù)匹配操作。在連續(xù)匹配操作,當(dāng)來自計(jì)時(shí)器總線71的時(shí)基值,和存儲(chǔ)在數(shù)據(jù)寄存器540的數(shù)值相等時(shí),在管腳/狀態(tài)總線76上產(chǎn)生一個(gè)輸出事件,并且確立連續(xù)匹配相關(guān)機(jī)制來防止冗余匹配。后續(xù)輸出事件僅在解除連續(xù)匹配相關(guān)機(jī)制后才能產(chǎn)生。在一個(gè)不相等比較產(chǎn)生或MOE比特位533被清零為%000后,才解除連續(xù)匹配相關(guān)。在第一個(gè)匹配產(chǎn)生后,MS比特位534被置位,但不需為產(chǎn)生后續(xù)匹配清零MS比特位534。
      本發(fā)明參照特定的實(shí)施例進(jìn)行圖解和描述,本領(lǐng)域的技術(shù)人員將會(huì)想到進(jìn)一步的修改和改進(jìn)。因此應(yīng)該理解,本發(fā)明不僅限于圖示的特定形式,而且如在附加的權(quán)利要求中所表明的,覆蓋所有修改后的形式,它們并未超出本發(fā)明的精神和范圍。
      權(quán)利要求
      1.一種計(jì)時(shí)器處理器(22),其特征在于一個(gè)第一計(jì)時(shí)器總線(71);一個(gè)第二計(jì)時(shí)器總線(72);多個(gè)時(shí)基選擇信號(hào)(50);一個(gè)第一時(shí)基通道(80中的一個(gè)),用于產(chǎn)生一個(gè)第一時(shí)基值,所述第一時(shí)基通道(80中的一個(gè))被耦合至所述多個(gè)時(shí)基選擇信號(hào)(50);一個(gè)第二時(shí)基通道(81中的一個(gè)),用于產(chǎn)生一個(gè)第二時(shí)基值,所述第二時(shí)基通道(81中的一個(gè))被耦合至所述多個(gè)時(shí)基選擇信號(hào);一個(gè)第一計(jì)時(shí)器總線控制通道(61),對(duì)應(yīng)于所述第一時(shí)基通道(80中的一個(gè)),用于選擇所述第一和第二時(shí)基通道(80,81)中的一個(gè),和如果所述第一時(shí)基通道(80中的一個(gè))被選擇,用于用第一時(shí)基值驅(qū)動(dòng)所述第一計(jì)時(shí)器總線(71),所述第一計(jì)時(shí)器總線控制通道(61)被耦合至所述第一計(jì)時(shí)器總線(71)和所述多個(gè)時(shí)基選擇信號(hào)(50);一個(gè)第二計(jì)時(shí)器總線控制通道(62),對(duì)應(yīng)于所述第二時(shí)基通道(81中的一個(gè)),如果所述第二時(shí)基通道(81中的一個(gè))被選擇,用于用第二時(shí)基值驅(qū)動(dòng)所述第一計(jì)時(shí)器總線(71),所述第二計(jì)時(shí)器總線控制通道(81中的一個(gè))被耦合給所述第一計(jì)時(shí)器總線(71)和所述多個(gè)時(shí)基選擇信號(hào)(50);一個(gè)管腳/狀態(tài)總線,用于提供管腳和狀態(tài)信息;一個(gè)管腳控制通道(52),用于控制在所述管腳/狀態(tài)總線上,管腳和狀態(tài)信息的傳輸;一個(gè)第一工作通道(57),被耦合至所述第一計(jì)時(shí)器總線(71),用于接收第一時(shí)基值,和耦合至所述管腳/狀態(tài)總線用于接收管腳和狀態(tài)信息;和一個(gè)第二工作通道(56),被耦合至所述第二計(jì)時(shí)器總線(72),用于接收一個(gè)第三時(shí)基值,和耦合至所述管腳/狀態(tài)總線用于接收管腳和狀態(tài)信息;
      2.一種集成電路計(jì)時(shí)器(22),其特征在于一個(gè)第一計(jì)時(shí)器總線(71);一個(gè)第一時(shí)基通道(80中的一個(gè)),用于產(chǎn)生一個(gè)第一時(shí)基值;一個(gè)第二時(shí)基通道(81中的一個(gè)),用于產(chǎn)生一個(gè)第二時(shí)基值;一個(gè)第一計(jì)時(shí)器總線控制通道(61),對(duì)應(yīng)于所述第一時(shí)基通道(80中的一個(gè)),用于選擇所述第一和第二時(shí)基通道(80,81)中的一個(gè),和如果所述第一時(shí)基通道(80中的一個(gè))被選擇,用于用第一時(shí)基值驅(qū)動(dòng)所述第一計(jì)時(shí)器總線(71),和一個(gè)第二計(jì)時(shí)器總線控制通道(62),對(duì)應(yīng)于所述第二時(shí)基通道(81中的一個(gè)),如果所述第二時(shí)基通道(81中的一個(gè))被選擇,用于用第二時(shí)基值驅(qū)動(dòng)所述第一計(jì)時(shí)器總線(71)。
      3.一種集成電路計(jì)時(shí)器(22),其特征在于多個(gè)數(shù)據(jù)導(dǎo)線(435);一個(gè)第一計(jì)時(shí)器通道(400),其特征在于一個(gè)第一數(shù)據(jù)存儲(chǔ)電路(403),用于存儲(chǔ)一個(gè)第一數(shù)據(jù)值;一個(gè)第二計(jì)時(shí)器通道(404),其特征在于一個(gè)第二數(shù)據(jù)存儲(chǔ)電路(404);一個(gè)傳輸電路(408),用于控制從所述第一數(shù)據(jù)存儲(chǔ)電路,到所述第二數(shù)據(jù)存儲(chǔ)電路的,第一數(shù)據(jù)值的一個(gè)傳輸,第一數(shù)據(jù)值是通過所述多個(gè)導(dǎo)線傳輸?shù)?;其中所述第一和第二?jì)時(shí)器通道(400,404)中的第一個(gè),執(zhí)行涉及第一數(shù)據(jù)值的一個(gè)計(jì)時(shí)器功能,和其中所述第一和第二計(jì)時(shí)器通道(400,404)中的第二個(gè),存儲(chǔ)第一數(shù)據(jù)值,而不執(zhí)行任何涉及第一數(shù)據(jù)值的計(jì)時(shí)器功能。
      4.一種計(jì)時(shí)器處理器(22),其特征在于一個(gè)第一集成電路結(jié)合區(qū)(110中的一個(gè));一個(gè)第二集成電路結(jié)合區(qū)(111中的一個(gè));一個(gè)第一工作通道(101);一個(gè)第二工作通道(102);一個(gè)第三工作通道(103);一個(gè)第一管腳/狀態(tài)總線,其特征在于一個(gè)第一管腳信息導(dǎo)線(112中的一個(gè));和一個(gè)第一管腳/狀態(tài)信息導(dǎo)線(113中的一個(gè));一個(gè)第二管腳/狀態(tài)總線,其特征在于一個(gè)第二管腳信息導(dǎo)線(114中的一個(gè));和一個(gè)第二管腳/狀態(tài)信息導(dǎo)線(115中的一個(gè));和控制裝置(105,106,107),用于通過所述第一管腳信息導(dǎo)線(112中的一個(gè)),選擇地在所述第一工作通道(101)和所述第一集成電路結(jié)合區(qū)(110中的一個(gè))之間傳輸?shù)男畔?,用于通過所述第一管腳/狀態(tài)信息導(dǎo)線(113中的一個(gè)),選擇地在所述第一工作通道(101)和所述第二集成電路結(jié)合區(qū)(111中的一個(gè))之間傳輸信息,用于通過所述第一管腳/狀態(tài)信息導(dǎo)線(113中的一個(gè)),選擇地在所述第一工作通道(101),和所述第二工作通道(102)之間傳輸信息,和用于通過所述第一和第二管腳/狀態(tài)信息導(dǎo)線(113,115),選擇地在所述第一工作通道(101),和所述第二工作通道(103)之間傳輸信息,所述控制裝置(105,106,107)被耦合到所述第一和第二集成電路結(jié)合區(qū)(110,111),所述第一和第二和第三工作通道(101,102,103),和所述第一和第二管腳/狀態(tài)總線。
      5.一種集成電路計(jì)時(shí)器(22),其特征在于多個(gè)第一工作通道(206);一個(gè)第一局部總線(218),被耦合到每個(gè)所述第一多個(gè)工作通道(206) ;多個(gè)第二工作通道(205);一個(gè)第二局部總線(217),被耦合到每個(gè)所述第二多個(gè)工作通道(205);和一個(gè)全局通信總線(200),被選擇地耦合到至少一個(gè)所述第一多個(gè)工作通道(206),和選擇地耦合到至少一個(gè)所述第二多個(gè)工作通道(205),所述全局通信總線(200),從所述第一多個(gè)工作通道的至少一個(gè)(206)接收一個(gè)計(jì)時(shí)信號(hào),和提供該計(jì)時(shí)信號(hào)給所述第二多個(gè)工作通道(205)的至少一個(gè)。
      6.一種集成電路計(jì)時(shí)器(22),其特征在于一個(gè)第一工作通道(160);一個(gè)第二工作通道(161);置位導(dǎo)線裝置(157),用于從所述第一工作通道(160)接收一個(gè)第一置位值,用于從所述第二工作通道(161)接收一個(gè)第二置位值,和用于提供一個(gè)結(jié)果置位值,所述置位導(dǎo)線裝置(157)被耦合到所述第一和第二工作通道(160,161);清零導(dǎo)線裝置(158),用于從所述第一工作通道(160)接收一個(gè)第一清零值,用于從所述第二工作通道(161)接收一個(gè)第二清零值,和用于提供一個(gè)結(jié)果清零值,所述清零導(dǎo)線裝置(158)被耦合到所述第一和第二工作通道(160,161);觸發(fā)導(dǎo)線裝置(159),用于從所述第一工作通道(160)接收一個(gè)第一觸發(fā)值,用于從所述第二工作通道(161)接收一個(gè)第二觸發(fā)值,和用于提供一個(gè)結(jié)果觸發(fā)值,所述觸發(fā)導(dǎo)線裝置(159)被耦合到所述第一和第二工作通道(160,161);控制裝置(64),用于接收結(jié)果置位值,結(jié)果清零值,和結(jié)果觸發(fā)值,所述控制裝置(64)用于提供一個(gè)輸出信號(hào)(168),這樣輸出信號(hào)的一個(gè)邏輯狀態(tài)可被結(jié)果置位值,結(jié)果清零值,結(jié)果觸發(fā)值所確定,所述控制裝置(64)被耦合到所述置位導(dǎo)線(157),所述清零導(dǎo)線(158),和所述觸發(fā)導(dǎo)線(159)。
      7.一種集成電路計(jì)時(shí)器(280),其特征在于一個(gè)第一計(jì)時(shí)器模塊(281),具有一個(gè)第一時(shí)基總線(71,或271)用于傳輸一個(gè)第一時(shí)基值;一個(gè)第二計(jì)時(shí)器模塊(282),具有一個(gè)第二時(shí)基總線,用于傳輸一個(gè)第二時(shí)基值;一個(gè)時(shí)鐘導(dǎo)線(328),用于傳輸一個(gè)時(shí)鐘信號(hào),該時(shí)鐘信號(hào)由所述第一和第二計(jì)數(shù)器模塊(281,282)中的一個(gè)產(chǎn)生,所述時(shí)鐘模塊(328)被耦合到所述第一和第二計(jì)數(shù)器模塊(281,282);和一個(gè)同步導(dǎo)線(329)用于傳輸一個(gè)同步信號(hào),該同步信號(hào)由所述第一和第二計(jì)數(shù)器模塊(281,282)中的一個(gè)確立,所述同步導(dǎo)線被耦合到所述第一和第二計(jì)數(shù)器模塊(281,282);其中所述第一計(jì)時(shí)器模塊(281)特征在于一個(gè)第一時(shí)基計(jì)數(shù)器(320),用于產(chǎn)生第一時(shí)基值,所述第一時(shí)基計(jì)數(shù)器(320)被時(shí)鐘信號(hào)增加或減少,當(dāng)同步信號(hào)被確立時(shí),所述第一時(shí)基計(jì)數(shù)器(320)被裝入一個(gè)預(yù)定值;和其中所述第二計(jì)時(shí)器模塊(282)特征在于一個(gè)第二時(shí)基計(jì)數(shù)器(320),用于產(chǎn)生第二時(shí)基值,所述第二時(shí)基計(jì)數(shù)器(321)被時(shí)鐘信號(hào)增加或減少,當(dāng)同步信號(hào)被確立時(shí),所述第二時(shí)基計(jì)數(shù)器(321)被裝入一個(gè)預(yù)定值。
      8.一種集成電路計(jì)時(shí)器(22),其特征在于一個(gè)第一計(jì)時(shí)器通道(55);一個(gè)第二計(jì)時(shí)器通道(57);計(jì)時(shí)器總線導(dǎo)線裝置(71),用于在一個(gè)第一周期內(nèi)傳輸一個(gè)第一時(shí)基值,和用于在一個(gè)第二周期內(nèi)傳輸一個(gè)第二時(shí)基值,所述計(jì)時(shí)器總線導(dǎo)線裝置(71)被耦合到所述第一和第二計(jì)時(shí)器通道(55,57);和標(biāo)志導(dǎo)線裝置(50),用于傳輸對(duì)應(yīng)于第一時(shí)基值的一個(gè)第一標(biāo)志值,和用于傳輸對(duì)應(yīng)于第二時(shí)基值的一個(gè)第二標(biāo)志值,所述標(biāo)志導(dǎo)線裝置(50)被耦合到所述第一和第二計(jì)時(shí)器通道(55,57)。
      全文摘要
      I/O控制模塊(IOCM25-29)具有通過計(jì)時(shí)器總線(71,72),和管腳/狀態(tài)總線(75-77)通信的通道。通道(86,87)被每個(gè)計(jì)時(shí)器總線(71,72)分成獨(dú)立的通道塊(86,87),該通道塊由它們各自的計(jì)時(shí)器總線(71,72)提供對(duì)不同時(shí)基值的存取,這樣就不會(huì)損失分辨率,因?yàn)樵谝粋€(gè)計(jì)時(shí)器塊(如86)中的每個(gè)通道,都能從它對(duì)應(yīng)的計(jì)時(shí)器總線(71)并行接收同樣的時(shí)基值。管腳/狀態(tài)總線(75-77)和計(jì)時(shí)器總線(71,72)能被獨(dú)立地劃分。
      文檔編號(hào)G06F15/76GK1159619SQ96121310
      公開日1997年9月17日 申請(qǐng)日期1996年11月12日 優(yōu)先權(quán)日1995年11月13日
      發(fā)明者沃奧·博納德·高勒, 格日·林恩·米勒, 大衛(wèi)·里沃拉 申請(qǐng)人:摩托羅拉公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1