2。還可利用其它公知且單個、低頻時鐘。中央處理單元14使用自定時電路,該自定時電路使得中央處理單元14能夠在主時鐘10的一個或兩個低頻周期內(nèi)開始并完成指令處理。中央處理單元14內(nèi)的子部件提供事件完成信號來指示這種子部件正在處理的單獨的任務已被完成。時鐘分頻器和同步電路11被用于生成具有30.5微秒的周期的時鐘信號12的延遲版本,并且被用于捕獲和同步在可植入醫(yī)療設備8內(nèi)和在中央處理單元14的子部件之間、在中央處理單元14和存儲器14之間和在中央處理單元14與感測模塊22、輸出模塊24和遙測模塊26之間的數(shù)據(jù)傳輸。存儲器16提供數(shù)據(jù)準備(ready)信號17,數(shù)據(jù)準備信號17指示在讀取操作情況下存儲器訪問完成并且數(shù)據(jù)可用,或指示存儲器存儲完成并且存儲器16可用于另一操作。起搏狀態(tài)機20從中央處理單元14接收控制或設置信息并且隨后獨立地生成定時信號以協(xié)調(diào)利用感測模塊22的感測與利用輸出模塊24的起搏。起搏狀態(tài)機20可在沒有與中央處理單元14交互的情況下執(zhí)行基本的治療輸出功能(諸如,起搏)。獨立地,起搏狀態(tài)機20可自主地提供特定起搏和感測配置直到由中央處理單元14利用更新的配置或操作模式進行更新。
[0035]圖2是示出了時鐘分頻器和同步電路11如何生成時鐘信號12的延遲版本的框圖。通過延遲元件4延遲時鐘信號12的兩個邊緣。延遲的時鐘信號被用于生成設備8內(nèi)的時鐘同步的附加邊緣。時鐘分頻器模塊6分頻(divide)時鐘信號12以生成較慢頻率時鐘信號,該較慢頻率時鐘信號也被用于設備8中。典型的分頻的時鐘信號具有八倍、十六倍、三十二倍、一百二十八倍、二百五十六倍和五百一十二倍時鐘信號12的周期。這些較慢的時鐘信號被用于以比時鐘信號12慢的速率運行的設備8中。設備8內(nèi)的一些電路使用除時鐘信號12之外的多個慢的時鐘。除原始時鐘信號12之外,延遲且分頻的時鐘信號共同表示定時和同步信號13。
[0036]為了示出可植入醫(yī)療設備8的部件如何可在自定時的基礎上操作的同時通過主時鐘10進行同步,可參考圖3,圖3示出了起搏狀態(tài)機20的框圖。起搏狀態(tài)機20幾乎獨立于中央處理單元14而操作并且實際上可在中央處理單元14處于掉電或省電模式下進行操作?;酒鸩袷奖痪幊痰骄幊踢壿嬯嚵?2中,而從中央處理單元14下載特定起搏模式和相關聯(lián)的參數(shù)。可編程邏輯陣列32控制起搏狀態(tài)機20的內(nèi)部操作。來自感測模塊30、中央處理模塊14(如果可用的話)以及可編程邏輯陣列32的輸入被用于生成輸出起搏信號56和58。從中央處理單元14下載醫(yī)生編程的模式信息并且模式信息被用于確定由編程邏輯陣列32所執(zhí)行的操作的順序。當在定時器解碼和時鐘多路復用器塊34中解碼來自可編程邏輯陣列32的輸出時生成時序。定時器36、38、40、42、44和46幫助根據(jù)狀態(tài)(fromstate to state)排序起搏狀態(tài)機20。定時器/計數(shù)器超時信號48向可編程邏輯陣列32提供定時反饋,其中定時器/計數(shù)器超時信號48被用于控制狀態(tài)順序并產(chǎn)生適當?shù)妮敵隹刂菩盘?。利用指示起搏狀態(tài)機20已完成指定任務并且準備好做附加任務或準備好接收附加輸入的事件完成信號完成起搏狀態(tài)機20的自定時與可植入存儲設備8內(nèi)的其它部件(諸如,中央處理單元14)的同步。存儲器50存儲起搏狀態(tài)機32的配置信息。
[0037]中斷由起搏狀態(tài)機32生成以用于事件的特定定時和排序并且中斷可被中央處理單元14用來監(jiān)控起搏操作以及與輸出模塊24交互。輸出模塊28還生成至遙測模塊26的中斷請求,該遙測模塊26可被用于在特定事件發(fā)生時傳輸遙測信息。
[0038]上電復位(power on reset) 52在通電條件期間是主動的。標記邏輯塊54被用于與遙測模塊26通信。心房起搏信號56和心室起搏信號58與輸出模塊28通信。
[0039]圖4中示出了中央處理單元14的控制單元塊,圖4是可植入醫(yī)療設備8的其它部件(諸如存儲器16和起搏狀態(tài)機20)的自定時的示例,并且在此被呈現(xiàn)以示出這些其它部件相對于主時鐘10如何實現(xiàn)自定時。
[0040]可通過執(zhí)行中央處理單元14的定時和控制管理的功能框圖圖4示出在主時鐘10和可植入醫(yī)療設備8的各種自定時部件之間的定時控制。來自存儲器16的只讀部分的操作碼通過總線15是可用的并且被捕獲在操作碼鎖存器60中。鎖存的操作碼被路由至指令解碼陣列62、可編程邏輯陣列,在此操作碼被解碼。指令解碼陣列62被分成兩塊,AND (與)陣列64和0R(或)陣列66。AND陣列64使用鎖存的操作碼和來自條件碼寄存器68的標記以及來自狀態(tài)鎖存器70的狀態(tài)信息來確定三件事:(I)對應于該操作碼的指令;(2)隨機存取存儲器尋址或輸入/輸出尋址的類型;和(3)是否滿足分支條件。OR陣列66使用AND陣列64的輸出72來生成控制信號74 (可在控制鎖存器78中被選通)以執(zhí)行被發(fā)送至中央處理單元14的算術(shù)和邏輯單元(未示出)的指令并且尋址在其中執(zhí)行指令的存儲器16的驅(qū)動電路。OR陣列66確定指令需要主時鐘信號12的一個循環(huán)、兩個循環(huán)還是三個循環(huán)等并且生成告訴控制邏輯解碼任務完成的事件完成信號。
[0041]AND陣列64和OR陣列66還將信號80發(fā)送至下一狀態(tài)解碼塊82以確定下一狀態(tài)。狀態(tài)解碼塊還從中斷塊84接收信息,該中斷塊84是中央處理單元14的被控制成一次僅允許中央處理單元14的一個中斷的內(nèi)部中斷機制。
[0042]圖5示出了可在來自主時鐘10的主時鐘信號12的任何循環(huán)期間發(fā)生的一般定時。示出了主時鐘信號12的一個周期的完整循環(huán)。在單個循環(huán)期間,實現(xiàn)以下操作:從只讀存儲器410的讀取操作;指令/控制解碼412 (如上所述);隨機存取存儲器地址生成或從寄存器讀取數(shù)據(jù)414 ;讀取隨機存取存儲器或?qū)懭腚S機存取存儲器416 ;算術(shù)邏輯單元操作418 ;和鎖存所得的數(shù)據(jù)420。因此,可看出在主時鐘信號12的單個循環(huán)內(nèi)完成許多單獨的操作。主時鐘信號12的一個完整周期被認為是單個中央處理單元循環(huán)。
[0043]圖6示出了在由中央處理單元14執(zhí)行的典型的指令中的定時信號和事件。在主時鐘信號12的正邊沿(positive edge)處,圖4中的控制邏輯塊生成RDROM信號510,從而開始只讀存儲器(ROM)訪問并開始AND陣列64中的指令解碼PLA預充電循環(huán)516。存儲器16在一段時間后用指示讀取訪問完成的事件完成信號(R0MDRDS的上升沿)(即訪問完成信號512)來響應。控制邏輯塊76以要求存儲器16將所訪問的數(shù)據(jù)放在總線18上并使R0MDRDS為低的數(shù)據(jù)選通(DS) 514來響應,從而代表數(shù)據(jù)是有效的。這完成了圖5中所示的讀取ROM事件410。
[0044]接著,AND陣列64被從預充電516中去除,因為有效數(shù)據(jù)在操作碼鎖存器60中的到AND陣列64的輸入處是可用的。解碼指令的類型、尋址模式和分支決策并生成相應的控制信號。這完成了圖5中的INST/控制解碼步驟412并且這里在圖6中用PLA_輸出518走高來表示。在主時鐘12的前半循環(huán)中的最后事件是隨機存取存儲器(RAM)或輸入輸出(I/O)地址生成。這隨著來自AND陣列64的控制信號行波傳送(ripple through)OR陣列66并尋址驅(qū)動塊而完成。RAM尋址(RAMADR) 520變得有效。在主時鐘信號12的負邊沿處,控制邏輯塊76生成讀取RAM(RDRAM) 522信號或開始RAM讀取訪問416 (圖5)。在實施例中,對于需要讀取或?qū)懭胫罵AM的那些循環(huán),RAM讀取/寫入訪問(或一些指令的I/O)是主時鐘信號12的后半循環(huán)中的第一事件。存儲器(RAM) 16在一段時間后用訪問完成信號(RAM10DR524的上升沿)來響應并且RAM數(shù)據(jù)則是有效的,這完成了圖5中的讀取RAM/I/0或?qū)懭?RAM/I/0 416。
[0045]RAM10DR事件完成信號524被控制邏輯76用來開始由ALUON信號526走高指示的OR陣列66操作418。ALUON信號526使算術(shù)邏輯單元62能夠處理來自存儲器16或輸入/輸出的數(shù)據(jù)。ALU