專利名稱:無指令可編程控制設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種對(duì)外部電信號(hào)產(chǎn)生反應(yīng)的可編程控制設(shè)備,以交互地產(chǎn)生不同類型的輸出信號(hào),包括模擬信號(hào)、數(shù)字信號(hào)及模擬信號(hào)。
傳統(tǒng)的以微處理器為基礎(chǔ)的控制設(shè)備,以逐行地利用組合語(yǔ)言程序可編程地來組成控制程序。本發(fā)明的目的在于提供一種具有簡(jiǎn)易構(gòu)成程序的方法的低成本的可編程控制設(shè)備,該方法對(duì)學(xué)習(xí)組合語(yǔ)言的指令組不具任何困難,以使程式程序化過程可藉由普通人員來進(jìn)行而無需經(jīng)過強(qiáng)化訓(xùn)練組合語(yǔ)言的概念與技能及理解微處理器的構(gòu)造。
本發(fā)明是尤指透過一可編程控制設(shè)備來學(xué)習(xí)所需基本元件的步驟;建立一簡(jiǎn)單到足以由未接受任何強(qiáng)化專業(yè)訓(xùn)練的普通人員來執(zhí)行的圖表模式來代表一控制系統(tǒng)的操作;提供一簡(jiǎn)單的程序程式化格式以系統(tǒng)地為所需的程序功能提供數(shù)據(jù)及最終發(fā)展一種可配合該模式編碼系統(tǒng)與一硬件回路及所發(fā)展的該簡(jiǎn)單的程序格式。
本發(fā)明簡(jiǎn)單的程序程式化方法,包括填入兩表格或兩數(shù)據(jù)區(qū)的步驟。該第一數(shù)據(jù)區(qū)取名為輸入/輸出端不同的穩(wěn)定或變化形態(tài),限定該輸入/輸出端的形態(tài),并設(shè)定當(dāng)一輸入端接收到一認(rèn)可的觸發(fā)信號(hào)時(shí)將被執(zhí)行的事件。該第二數(shù)據(jù)區(qū)限定于當(dāng)一認(rèn)可的觸發(fā)信號(hào)被接收時(shí)的一事件的響應(yīng)。
本發(fā)明的硬件實(shí)施例是針對(duì)一可編程的裝置的輸入/輸出(I/O)結(jié)構(gòu)與數(shù)據(jù)儲(chǔ)存機(jī)構(gòu)以產(chǎn)生合成的音頻信號(hào)及/或數(shù)字輸出信號(hào)。典型的硬件實(shí)施例包括多個(gè)輸入/輸出端(I/O端),各I/O端被連到多個(gè)信號(hào)鑒定回路用于預(yù)定認(rèn)可的輸入信號(hào)的檢測(cè);多個(gè)輸出信號(hào)驅(qū)動(dòng)器,用于一輸出信號(hào)的傳送;一事件數(shù)據(jù)存儲(chǔ)器以儲(chǔ)存當(dāng)一認(rèn)可的觸發(fā)信號(hào)被接收時(shí)的將被執(zhí)行事件;一I/O形態(tài)存儲(chǔ)器用以儲(chǔ)存構(gòu)成的數(shù)據(jù)以設(shè)定該I/O端的輸入/輸出狀況,以及當(dāng)一認(rèn)可的觸發(fā)信號(hào)被接收時(shí)尋址于該事件數(shù)據(jù)存儲(chǔ)器;一事件執(zhí)行回路用于自事件數(shù)據(jù)存儲(chǔ)器接收數(shù)據(jù)以產(chǎn)生不同類型的輸出信號(hào);及該尋址回路以尋址于該事件數(shù)據(jù)存儲(chǔ)器與該I/O形態(tài)存儲(chǔ)器。
該程序程式化過程的除錯(cuò)是利用簡(jiǎn)單的程序程式化結(jié)構(gòu)。在許多情況下,該程序除錯(cuò)可藉由人機(jī)對(duì)話地定址顯示于一監(jiān)測(cè)屏幕上的一單頁(yè)數(shù)據(jù)表的觸發(fā)模式來進(jìn)行。該等簡(jiǎn)單的程序程式化結(jié)構(gòu)大大削減了研發(fā)成本、所需的程序程式化時(shí)間與除錯(cuò)時(shí)間,以發(fā)展一種具人機(jī)對(duì)話控制特征的產(chǎn)品。
本發(fā)明的最簡(jiǎn)結(jié)構(gòu)與最小化結(jié)構(gòu)實(shí)施例中的主要區(qū)別,當(dāng)與一建立在控制裝置上的微處理器比較時(shí),為其不含任何程序計(jì)數(shù)器,邏輯運(yùn)算單元(ALU)、指令解碼器也不含任何堆疊存儲(chǔ)器。其未具特定的共同數(shù)據(jù)總線地址總線以由控制設(shè)備的大部功能塊共享。一時(shí)鐘信號(hào)為不必要的,除非是由一信號(hào)發(fā)生器所需以產(chǎn)生一信號(hào)。一事件的執(zhí)行可為瞬時(shí)的而不會(huì)有任何由與微處理器的時(shí)鐘回路有關(guān)的指令組造成的延遲。由于該等簡(jiǎn)單的硬件結(jié)構(gòu),所發(fā)明的控制設(shè)備的成本與一傳統(tǒng)的以微處理器為基礎(chǔ)的控制器比較即較為廉價(jià)。
本發(fā)明的程序程式化程序無需如常規(guī)組合語(yǔ)言程序程式化中所需的程序程式化過程是處于一指令序列邏輯次序;程序師也無需學(xué)習(xí)任何指令組。本發(fā)明的簡(jiǎn)單結(jié)構(gòu)使得普通人可以最少的訓(xùn)練而有效地為控制裝置程式化程序。
藉由加入聲音合成功能,該裝置可應(yīng)用于一可用以人機(jī)對(duì)話地驅(qū)動(dòng)外部變換器如一發(fā)光二極管(LED)的排列及于同時(shí)產(chǎn)生模擬聲音的有限能力的可編程聲音合成器設(shè)備。
此外,本發(fā)明的實(shí)施例在許多其它的應(yīng)用中獲得實(shí)用性,如邏輯控制器,人機(jī)對(duì)話控制器與計(jì)時(shí)器。
本發(fā)明當(dāng)閱讀以下的描述并連同結(jié)合的附圖時(shí)可最佳地被理解。
圖1說明一顯示數(shù)據(jù)格式以為控制裝置程式化程序的可編程成型表的一種實(shí)施例;圖2A是為一實(shí)施例的流程圖;圖2B是為一依據(jù)圖2A的流程圖程式化的圖表;圖3A是為另一實(shí)施例的流程圖;圖3B是為一依據(jù)圖3A的流程圖程式化的圖表;圖4A是為另一實(shí)施例的另一流程圖;圖4B是為一依據(jù)圖4A的流程圖程式化的圖表;圖5是為一方塊圖以顯示硬件的結(jié)構(gòu);圖6是為一電路圖以顯示一典型輸入/輸出回路的結(jié)構(gòu);圖7是為一電路圖以顯示該I/O形態(tài)存儲(chǔ)器與該尋址回路的典型結(jié)構(gòu);圖8是為一電路圖以顯示典型的事件數(shù)據(jù)存儲(chǔ)器,事件執(zhí)行回路與相關(guān)的尋址回路的連接;圖9是為圖8的一放大的電路圖;圖10A說明一顯示計(jì)時(shí)程序程式化功能的可程式化構(gòu)型表的一種實(shí)施例;圖10B說明一顯示間接尋址功能的可程式化構(gòu)型表的一種實(shí)施例;圖11是為一典型的屏幕顯示以模擬該程序流程用于調(diào)整該程序構(gòu)型表;圖12是為一版面設(shè)計(jì)的實(shí)例以顯示一集成電路內(nèi)部的該I/O形態(tài)存儲(chǔ)器的位置。
一理解本發(fā)明的較簡(jiǎn)單的途徑是限定該可編程設(shè)備之一較佳實(shí)施例的規(guī)格,以藉由應(yīng)用例而被說明并學(xué)習(xí)該程序程式化方法以為可程式化的聲音合成器程式化程序。下一步為學(xué)習(xí)若干簡(jiǎn)單的應(yīng)用例。該描述其后擴(kuò)展到所發(fā)明的控制裝置與將本發(fā)明制造在一集成路中的方法的硬件實(shí)施例及最后為程序模擬與調(diào)整系統(tǒng)的一較佳實(shí)施例。
一典型的實(shí)施例的詳細(xì)說明將以以下所列的應(yīng)用實(shí)例來說明1.該控制設(shè)備包括八個(gè)可編程輸入/輸出端及一附加的音頻輸出端。各端的名稱由一三個(gè)位數(shù)的二進(jìn)制數(shù)代表。
2.各端可編程為一輸入端、一輸出端或一“無關(guān)”的高阻抗端。
3.各輸入端可編程以對(duì)一“認(rèn)可”特征的輸入觸發(fā)信號(hào)響應(yīng)。較佳實(shí)施例的四個(gè)典型特征的輸入信號(hào)被限定如下(a)一信號(hào),藉由一上升緣特征,以符號(hào)“R”代表;(b)一信號(hào),藉由一下降緣特征,以符號(hào)“F”代表;(c)一信號(hào),當(dāng)該信號(hào)被取樣時(shí)有一邏輯高電平特征,以符號(hào)“1”代表;以及(d)一信號(hào),當(dāng)該信號(hào)被取樣時(shí)有一邏輯低電平特征,以符號(hào)“O”代表。
4.各輸出端可被程式化以傳送一輸出信號(hào)。三個(gè)輸出信號(hào)的實(shí)施被限定如下(a)一邏輯高電平信號(hào),以符號(hào)“H”代表;(b)一邏輯低電平信號(hào),以符號(hào)“L”代表;(c)一輸出信號(hào)包括一6Hz的矩形波脈沖,以符號(hào)“P”代表。
5.該“無關(guān)”高阻抗?fàn)顟B(tài)由符號(hào)“X”代表。各端將如上限定而被設(shè)定為八個(gè)可能的狀態(tài)之一 R、F、1、O、H、L、P與X。八個(gè)可能的I/O型態(tài)的一端點(diǎn),可藉由一三位數(shù)的二進(jìn)制數(shù)代表。
6.例如最多有16種可能的I/O型態(tài),設(shè)定為I/O狀態(tài)#0至I/O狀態(tài)15。各I/O狀態(tài)藉由一四位數(shù)的二進(jìn)制數(shù)代表。僅有一個(gè)I/O狀態(tài)是由程序來設(shè)定以代表在某個(gè)時(shí)刻的控制裝置的I/O型態(tài)。I/O狀態(tài)#“0”被限定為預(yù)設(shè)的主動(dòng)的I/O形態(tài);亦即當(dāng)控制裝置被首先接通電源時(shí),為主動(dòng)的I/O形態(tài)。此外,上述狀態(tài)#0的功能也可由一特定的事件#’0來代替。
7.無論何時(shí)一I/O形態(tài)之一輸入端收到一合格的觸發(fā)信號(hào),其直接執(zhí)行一預(yù)定事件。
8.最多有32項(xiàng)預(yù)定事件。各事件以一五位數(shù)的二進(jìn)制數(shù)代表。
應(yīng)當(dāng)注意一I/O端被規(guī)劃的方法與實(shí)施例的I/O狀態(tài)及事件的數(shù)目是為示范性的。盡管I/O形態(tài)與事件的數(shù)目可為任何靈活的數(shù)目;實(shí)際上,較高的數(shù)目在內(nèi)部寄存器與存儲(chǔ)器數(shù)據(jù)段中需要更多的位數(shù),且因此導(dǎo)致較高的生產(chǎn)成本。一恰當(dāng)?shù)臄?shù)目最好在控制設(shè)備的設(shè)計(jì)中被限定。
為可編程的聲音合成器程式化的較佳的程序程式化方法的一個(gè)實(shí)例是藉由依據(jù)本發(fā)明的圖1中的程序程式化格式代表。該程序程式化格式包括兩個(gè)區(qū)域。第一區(qū)域是藉由圖表10來代表,包括列出所有八個(gè)I/O端的一第一座標(biāo)系12與列出所有I/O形態(tài)的一第二座標(biāo)系11。圖表中的各元件代表一端點(diǎn)于一特殊I/O形態(tài)處的型態(tài)。該程序程式化過程的第一部分是用以設(shè)定表中的各元件具如限定的八個(gè)符號(hào)R、F、1、O、X、H、L與P中之一。無論何時(shí)一端被規(guī)劃為一輸入端,一計(jì)數(shù)的事件將被設(shè)定。此是為當(dāng)一認(rèn)可的輸入信號(hào)被接收時(shí)將被執(zhí)行的事件。元件13“FE11”指的是I/O態(tài)#1的端1(腳1)的狀態(tài),而“F”指的是認(rèn)可的信號(hào)藉由一下降緣特征,E11指的是當(dāng)一下降緣信號(hào)藉由端1接收時(shí)事件#11將被執(zhí)行。元件14指的是當(dāng)一上升緣信號(hào)由端2檢測(cè)時(shí),事件#2將被執(zhí)行。元件15“X”指的是端6是為一無關(guān)端。無論何時(shí)一輸入端被成形為“X”,任何由該端收到的觸發(fā)信號(hào)被忽略。無論何時(shí)一輸出端被成形成“X”,該輸出端被成形為具一高的輸出阻抗。
現(xiàn)請(qǐng)注意圖表20,其包括該程序程式化格式的第二部分并限定欲被執(zhí)行的事件。一事件可能包括一或多個(gè)子事件。各事件或子事件當(dāng)被執(zhí)行時(shí)執(zhí)行一任務(wù)如產(chǎn)生一輸出信號(hào)、調(diào)整一主動(dòng)的I/O形態(tài)、開始一計(jì)時(shí)計(jì)數(shù)器或?qū)?zhí)行導(dǎo)向另一事件。表20羅列了依據(jù)表10的將被執(zhí)行的所有事件的細(xì)節(jié)內(nèi)容。行21指的是事件#1包括三個(gè)子事件22(狀態(tài)#1)、23(聲音1),與24(事件#1)。假定I/O狀態(tài)#0是為主動(dòng)的I/O形態(tài);藉由端1的一上升緣信號(hào)的接收觸發(fā)事件#1的執(zhí)行;即,子事件22、23與24將被順次執(zhí)行。子事件22指的是主動(dòng)的I/O形態(tài)自I/O狀態(tài)#0變換到I/O狀態(tài)1,繼之以“聲音1”標(biāo)識(shí)的音頻信號(hào)復(fù)制。當(dāng)聲音的復(fù)制完成時(shí),子事件24被執(zhí)行,循環(huán)回到執(zhí)行“事件#1”并重復(fù)“聲音1”以作另一循環(huán)。該回路繼續(xù)進(jìn)行直至I/O狀態(tài)#1的端1至端4的任一收到認(rèn)可的信號(hào)。例如,當(dāng)端1檢測(cè)到一下降緣信號(hào)時(shí),該與“事件#1”構(gòu)成循環(huán)的“聲音1”被中斷且事件#11被執(zhí)行。事件#11指示控制器回到I/O狀態(tài)#0如該主動(dòng)的I/O形態(tài)且該“結(jié)束”符號(hào)指的是事件結(jié)束且控制裝置是處在一等待下一認(rèn)可的輸入信號(hào)以如所限定地由I/O狀態(tài)#0被接收的閑置模式中。
在控制裝置啟動(dòng)時(shí),一I/O形態(tài)是被限定為預(yù)設(shè)的I/O狀態(tài);即,控制裝置之驅(qū)動(dòng)后的主動(dòng)的I/O形態(tài)。一方便的標(biāo)示法是為限定I/O狀態(tài)#0為預(yù)設(shè)啟動(dòng)I/O狀態(tài)。相對(duì)來說,狀態(tài)#0可由一事件#0來替代即于啟動(dòng)時(shí)事件#0首先被執(zhí)行。
應(yīng)當(dāng)注意的是各I/O形態(tài)相互不具序列關(guān)系且表10可由任何次序被排列。類似地,表20中所列的任何事件與另一事件不具序列關(guān)系,除非其被標(biāo)識(shí)為如行21中另一事件的子事件。事件可以任何次序被編號(hào)且倘程序師要求號(hào)碼可被跳過。所有具序列關(guān)系的子事件被排列在一單一事件行列中。該等排列使程序師可在與列出常規(guī)組合語(yǔ)言程序程式化的多行數(shù)列表比較時(shí),具有一更清晰的程序圖示。
盡管圖1中的程序表如所述者構(gòu)成兩區(qū)域,本發(fā)明程式化方式保持學(xué)習(xí)的簡(jiǎn)單性與簡(jiǎn)易的可追縱特性,程序程式化圖表的格式結(jié)構(gòu)可有不同變化。例如I/O形態(tài)區(qū)域可被分割為一個(gè)硬性輸入?yún)^(qū)域及一個(gè)硬性輸出區(qū)域。此時(shí)輸入?yún)^(qū)域只有與輸入認(rèn)可信號(hào)有關(guān)的符號(hào)而相對(duì)輸出區(qū)域只有與輸出有關(guān)的符號(hào)。
圖2A與圖2B說明另一簡(jiǎn)單的應(yīng)用實(shí)例,其中該控制裝置的一觸發(fā)腳被設(shè)計(jì)為一不可觸發(fā)的觸發(fā)輸入端。圖2B的行41指的是腳2至腳8均為無關(guān)端。元件42表示當(dāng)一上升緣信號(hào)由腳1接收時(shí),事件#1將被執(zhí)行。表50表示事件#1首先觸發(fā)子事件51,其在“聲音”52產(chǎn)生之前設(shè)定狀態(tài)#1為主動(dòng)的I/O形態(tài)。表40的行45表示腳1在“聲音”52產(chǎn)生的時(shí)間內(nèi)變換為高阻抗?fàn)顟B(tài);故而腳1成為一不可觸發(fā)的觸發(fā)腳。在聲音再現(xiàn)結(jié)束時(shí),I/O狀態(tài)#0被標(biāo)識(shí)為主動(dòng)狀態(tài)且腳1準(zhǔn)備接收另一合格的觸發(fā)信號(hào)。
該兩I/O的形態(tài)與事件#1可藉由如圖2A中所示之一信號(hào)流程圖表示。各I/O狀態(tài)#0與I/O狀態(tài)#1藉由一方塊表示。該矩形塊31指的是I/O狀態(tài)#0為一穩(wěn)定狀態(tài)。該橢圓形的方塊34指的是I/O狀態(tài)#1為一變換狀態(tài)。箭頭行32表示主動(dòng)狀態(tài)仿?lián)?0中事件#1的子事件51的指令,自I/O狀態(tài)#0被切換到I/O狀態(tài)#1。箭頭行33代表在“聲音”52被再現(xiàn)后,自主動(dòng)狀態(tài)返回I/O狀態(tài)0的子事件53。
圖3A與圖3B說明另一應(yīng)用實(shí)例其中該控制裝置被限定為具被設(shè)計(jì)為觸發(fā)四個(gè)不同聲音(聲音#1至聲音#4)的四個(gè)觸發(fā)端(腳1至腳4)。在一聲音被再現(xiàn)期間內(nèi),對(duì)應(yīng)的觸發(fā)端由于觸發(fā)信號(hào)本身而為不可觸發(fā)的但將被中斷并藉由其它輸入端收到的認(rèn)可觸發(fā)信號(hào)而被再次觸發(fā)。
圖3B的行77指的是腳5至腳8均為無關(guān)端。元件74表示當(dāng)一上升緣信號(hào)由腳4接收時(shí),事件#4將被執(zhí)行。表80表示事件#4首先觸發(fā)子事件82,其在“聲音#4”83產(chǎn)生之前設(shè)定I/O狀態(tài)#4為主動(dòng)的I/O形態(tài)。表70的行78表示腳4在“聲音#4”83產(chǎn)生的時(shí)間內(nèi)變換為高阻抗?fàn)顟B(tài);故而腳4成為一不可觸發(fā)的觸發(fā)腳。行78亦指示腳1至腳3以保持可觸發(fā)性以使由腳1至腳3接收的任何認(rèn)可的觸發(fā)信號(hào)脈沖中斷“聲音#4”的再現(xiàn)。在聲音再現(xiàn)結(jié)束之時(shí),狀態(tài)#0依據(jù)子事件84被標(biāo)識(shí)為主動(dòng)狀態(tài)且腳4準(zhǔn)備接收另一認(rèn)可的觸發(fā)信號(hào)。
該五個(gè)I/O形態(tài)與四項(xiàng)事件可藉由如圖3A中所示之一流程圖表示,腳1在“聲音”52產(chǎn)生的時(shí)間內(nèi)變換為高阻抗?fàn)顟B(tài);故而腳1成為一不可觸發(fā)的觸發(fā)腳。在聲音再現(xiàn)結(jié)束時(shí),I/O狀態(tài)#0被標(biāo)識(shí)為主動(dòng)狀態(tài)且腳1準(zhǔn)備接收另一認(rèn)可的觸發(fā)信號(hào)。
該兩I/O的形態(tài)與事件#1可藉由如圖2A中所示之一信號(hào)流程圖表示。各I/O狀態(tài)#0至I/O狀態(tài)#4藉由一方塊表示。該矩形塊64指的是I/O狀態(tài)#0為一穩(wěn)定狀態(tài)。該橢圓形的塊61、65、66與67指的是I/O狀態(tài)#1至I/O狀態(tài)#4為變換狀態(tài)。箭頭行69表示主動(dòng)狀態(tài)依據(jù)表80中所示的事件#4的子事件82的指令自I/O狀態(tài)#0被切換到I/O狀態(tài)#4。箭頭行71代表在“聲音#4”83被再現(xiàn)后自主動(dòng)狀態(tài)返回I/O狀態(tài)0的子事件84。
圖2A與圖3A的流程圖分別與程序程式化表40、50、70與80的內(nèi)容緊密聯(lián)結(jié)。在更為復(fù)雜的應(yīng)用中,使用者將發(fā)現(xiàn)首先草擬一流程圖對(duì)設(shè)定程式有很大幫助,對(duì)每一I/O形態(tài)與事件給定一有意義的名字而不是一標(biāo)識(shí)號(hào)。依據(jù)該流程圖限定所需的I/O形態(tài)與事件,并最后填入I/O構(gòu)型表與事件列表為如流程圖的內(nèi)連箭頭行所述。
圖4A與圖4B說明另一應(yīng)用實(shí)例中該控制裝被置限定為具有兩觸發(fā)端(腳1與腳2)與六個(gè)輸出端(腳3至腳8);各輸出端被耦連以驅(qū)動(dòng)一發(fā)光二極管。該六個(gè)發(fā)光二極管被耦連在一行中以顯示閃爍效果。腳1首先被觸發(fā)以啟動(dòng)發(fā)光二極管的閃爍序列以使各發(fā)光二極管被逐一導(dǎo)通持續(xù)0.5秒。當(dāng)腳1被再次觸發(fā)時(shí),控制裝置變換到第二個(gè)閃光模式以使三個(gè)選擇的發(fā)光二極管在某時(shí)刻均被導(dǎo)通持續(xù)約0.5秒。隨后的腳1的觸發(fā)將觸發(fā)兩閃光模式。該閃光過程將持續(xù)直至腳2被觸發(fā)。
一使用者,藉由首先制定出一如圖4A中所示的流程圖可容易地設(shè)計(jì)此應(yīng)用實(shí)例。該矩形塊91標(biāo)識(shí)I/O狀態(tài)#0為一表示兩者為驅(qū)動(dòng)狀態(tài)與待機(jī)模式的穩(wěn)定狀態(tài)。當(dāng)一認(rèn)可的觸發(fā)接收時(shí),序列的LED閃光模式92通過代表事件#1之開始的箭頭線94而被啟動(dòng)。該環(huán)路過程97包括六個(gè)不同的LED輸出狀態(tài)。環(huán)路過程97的各狀態(tài)逐一點(diǎn)亮不同的LED持續(xù)0.5秒的時(shí)間。在中止脈沖由腳2收到之時(shí),閃光序列將被中斷且主動(dòng)狀態(tài)通過箭頭線95所示的事件#3返回到I/O狀態(tài)#0。倘隨后的認(rèn)可的信號(hào)被腳1接收,該環(huán)路過程97被中斷并通過箭頭線96所示的事件#2切換到選擇的閃光模式93。該選擇的閃光模式的環(huán)路過程98包括兩LED輸出狀態(tài)。各狀態(tài)點(diǎn)亮三個(gè)LED持續(xù)0.5秒的時(shí)期。當(dāng)該觸發(fā)脈沖被再次接收,該閃光過程通過事件#1被切回序列的閃光模式92。倘一中止脈沖被接收,主動(dòng)通過事件#3被切換到塊91且控制裝置返回到待機(jī)模式。
由該流程圖可見及程序程式化過程需要9個(gè)I/O形態(tài)。I/O狀態(tài)#0代表啟動(dòng)I/O形態(tài)以及待機(jī)模式。需要六個(gè)I/O形態(tài)用于序列的LED閃光模式及兩個(gè)I/O形態(tài)藉由選擇的LED閃光模式而規(guī)定。除此之外,三個(gè)事件將被設(shè)定。事件#1指向序列的LED閃光模式,事件#2指向選擇的LED閃光模式及事件#3指向待機(jī)模式。
流程圖4A的主題是針對(duì)表100與120的構(gòu)成。一有意義的名字被用以標(biāo)識(shí)各I/O形態(tài)與事件來取代藉由一數(shù)字來標(biāo)識(shí)各I/O形態(tài)與事件。類似地,各I/O端亦被命名以利用該程序程式化過程。在表100中,腳1被命名為觸發(fā)腳并藉由“TG”來標(biāo)識(shí),腳2為“截止”端以中止該閃光過程。腳3至腳8被標(biāo)識(shí)為L(zhǎng)ED1至LED6以指示這些端腳分別被耦連到LED1至LED6。I/O狀態(tài)#0被標(biāo)識(shí)為如由元件102指示的“待機(jī)模式”。I/O狀態(tài)#1被標(biāo)識(shí)為如在元件101中所示的“LED1導(dǎo)通”。I/O狀態(tài)#7被標(biāo)識(shí)為如由元件101所示的名字“ALT1”以表示該第一選擇的LED為點(diǎn)亮形式。I/O狀態(tài)#8如由元件11 1所示者由名字“ALT2”標(biāo)示以表示該第二選擇的LED為點(diǎn)亮形式。
在啟動(dòng)時(shí),I/O狀態(tài)#0被設(shè)定為啟動(dòng)主動(dòng)的I/O形態(tài)。僅腳1可檢測(cè)一上升緣的認(rèn)可信號(hào)。所有其它的端處于高阻抗?fàn)顟B(tài)中。如由代碼元件107所指者,在一認(rèn)可觸發(fā)信號(hào)由腳1接收時(shí),事件#1,121被執(zhí)行,其如子事件122所指示,初始該主動(dòng)狀態(tài)以切換到I/O狀態(tài)#1;且因此逐步地到I/O狀態(tài)#6。各I/O形態(tài)由一“延遲0.5”的延遲時(shí)間而被保持直到另一I/O形態(tài)接替控制。依據(jù)I/O狀態(tài)#1,僅有LED1被導(dǎo)通0.5秒。該環(huán)路過程自腳4至腳8被重復(fù)直至一合格的觸發(fā)信號(hào)由腳1或腳2接收。應(yīng)當(dāng)注意的是在I/O#1至I/O#6的環(huán)路過程期間,任何由腳1接收的認(rèn)可信號(hào)指向?yàn)樵谑录?2 124之I/O狀態(tài)#7與I/O狀態(tài)#8之間順次切換。三個(gè)由112指示的選擇的LED在某一時(shí)刻導(dǎo)通直至另一認(rèn)可的信號(hào)由腳1或腳2接收。應(yīng)當(dāng)注意的是當(dāng)一上升緣信號(hào)在I/O狀態(tài)#1至I/O狀態(tài)#8期間由腳2接收時(shí),由線125表示的事件#3被執(zhí)行以如子事件127所指自主動(dòng)狀態(tài)返回I/O狀態(tài)#0的待機(jī)模式。
該等程序程式化方法的構(gòu)成提供一種內(nèi)建結(jié)構(gòu)的方法用于沒有任何結(jié)構(gòu)的程式化概念或?qū)ξ⑻幚砥鳂?gòu)成之理解的未受過訓(xùn)練的程序設(shè)計(jì)員以系統(tǒng)地為一應(yīng)用程式化程序。該程序程式化過程可以一易于學(xué)習(xí)的,簡(jiǎn)單構(gòu)成的且不含任何需遵循的復(fù)雜的設(shè)計(jì)規(guī)則的流程圖起始。實(shí)際的程序程式化過程依據(jù)所建立的流程圖需填入由兩表組成的規(guī)格。無需應(yīng)用2進(jìn)或16進(jìn)數(shù)供運(yùn)算,無存儲(chǔ)器的I/O圖象概含供學(xué)習(xí),無存儲(chǔ)器溢出或其它類型的限制條件可擔(dān)心,無入口點(diǎn)或程序計(jì)數(shù)器需注意;且無指令組需牢記。除此之外,避免了通常包括逐行指令代碼與一或多個(gè)操作數(shù)的指令組。該程序程式化方法對(duì)那些被指令組如“LOAD R1,64H”或“JUMP LINE 4FFH”混淆的普通人而言是非常有用的。更重要地,該簡(jiǎn)單的流程圖的結(jié)構(gòu)被直接整合到實(shí)際的程序程式化過程中,藉由其特征填入的圖表提供一程序流程的一清晰的易斷結(jié)構(gòu)。不同I/O形態(tài)中的各I/O端的狀態(tài)被良好地組織起并清晰地羅列在一起以利于邏輯流程的追蹤。通常地完整的程序可被列在一有助于普通人掌握整個(gè)程序圖的單頁(yè)的紙上。
應(yīng)當(dāng)注意該發(fā)明出的簡(jiǎn)單的程序程式化方法可藉由設(shè)計(jì)一翻譯程式而被施加于已知微處理器基礎(chǔ)的控制設(shè)備的程序,以將兩表的程式化數(shù)據(jù)翻譯為微處理器基礎(chǔ)的控制裝置可轉(zhuǎn)譯的其他程序語(yǔ)言。該其它語(yǔ)言可為machine language,組合語(yǔ)言,Macro或?yàn)锽ASIC等的高級(jí)語(yǔ)言。再進(jìn)一步的程式改良為審查已經(jīng)翻譯的程式,去除重覆部分以節(jié)省所占用的存儲(chǔ)器空間或是加進(jìn)補(bǔ)充應(yīng)用該種翻譯語(yǔ)言所編寫的額外程式片段。
由前所述,可以理解該程序程式化方法的較佳實(shí)施例在此已被公開而有助于藉由普通人的控制裝置的系統(tǒng)的程序程式化。
或者,前述程式編排的事件可包括應(yīng)用其它語(yǔ)言寫成的子事件。這安排充分利用了系統(tǒng)所容許的其它程式語(yǔ)言,并同時(shí)維持了是項(xiàng)發(fā)明的友善軟件結(jié)構(gòu)、是項(xiàng)發(fā)明的簡(jiǎn)單程式編排與其它語(yǔ)言程式段落的兼容性,使得它成為一種理想的適用于I/O結(jié)構(gòu)有關(guān)程式編寫方法。
當(dāng)是項(xiàng)發(fā)明簡(jiǎn)易程式方法被翻譯為組合語(yǔ)言時(shí),圖1中圖表10每一I/O接端的狀況可會(huì)被翻譯為應(yīng)用組合語(yǔ)言寫成的I/O程式,無論其狀況有否改變。假若一微形處理器是由圖表10一樣之形式,而其接端1至4僅限于輸入及接端5至8僅限于輸出,圖表10可以被一分為二。第一個(gè)分出來的圖表說明輸入端1至4,第二個(gè)分出來的圖表說明輸出端5至8。這改良會(huì)令翻譯程序簡(jiǎn)單化及會(huì)節(jié)省有關(guān)程式所耗用的儲(chǔ)存空間。
與揭示的程序方法緊密相聯(lián)的硬件設(shè)計(jì)的一種較佳實(shí)施例說明于圖5中。為了便于描述該硬件的實(shí)施例及與程序程式化方法的關(guān)系。采用用以說明程序式化方法而陳述的可編程控制裝置的規(guī)格??梢岳斫獗景l(fā)明的權(quán)利要求與應(yīng)用并不限于該規(guī)格。輸入/輸出回路144如程序程式化方法應(yīng)用實(shí)例中所限定的包括八端145;該控制回路供成形各端的狀態(tài);驅(qū)動(dòng)回路供當(dāng)該端被成形為一輸出端時(shí)驅(qū)動(dòng)一信號(hào)及鑒定回路供當(dāng)該端被成形為一輸入端時(shí)檢測(cè)一觸發(fā)信號(hào)。
該輸入/輸出回路144自I/O形態(tài)存儲(chǔ)器(I/O狀態(tài)存儲(chǔ)器)132接收控制信號(hào)以將該I/O端145成型為16個(gè)最大的可能的狀態(tài)之一。I/O形態(tài)存儲(chǔ)器包括16頁(yè)的存儲(chǔ)器,各存儲(chǔ)器頁(yè)代表包含所需數(shù)據(jù)的一I/O形態(tài)以成形八I/O端145的各個(gè)。在控制狀態(tài)啟動(dòng)時(shí),啟動(dòng)回路131觸發(fā)16頁(yè)I/O形態(tài)存儲(chǔ)器132之一為預(yù)設(shè)的I/O形態(tài)或主動(dòng)I/O形態(tài)且該頁(yè)數(shù)據(jù)被送入輸入/輸出回路以成型該I/O端。
在一認(rèn)可的觸發(fā)信號(hào)收到時(shí),自I/O狀態(tài)存儲(chǔ)器132獲得的對(duì)應(yīng)的事件地址信息被送到事件尋址回路147。該對(duì)應(yīng)的事件數(shù)據(jù)存儲(chǔ)器149的起始地址在地址總線148處建立且該事件在事件執(zhí)行回路138的控制之時(shí)被執(zhí)行。該事件執(zhí)行回路138分析對(duì)應(yīng)事件數(shù)據(jù)存儲(chǔ)器149中包含的該事件與子事件并相應(yīng)地作出反應(yīng)。一產(chǎn)生聲音的子事件將激發(fā)定位于該事件執(zhí)行回路中的聲音再現(xiàn)回路。所獲的音頻信號(hào)通過信號(hào)通道141與選擇的輸出端140被產(chǎn)生為一輸出信號(hào)135?;蛘?,一諸如一六Hz脈沖序列的輸出信號(hào)可如“P”I/O形態(tài)所限定者而被產(chǎn)生。此脈沖序列通過一I/O端145與信號(hào)通道139而被傳送。當(dāng)一子事件需要起動(dòng)另一如圖1中的子事件24的事件的操作時(shí),該事件執(zhí)行回路將信息連接到事件尋址回路147且新的事件相應(yīng)地被起動(dòng)。
當(dāng)一子事件需要起動(dòng)另一如圖1中子事件22的輸入/輸出形態(tài)的操作時(shí),該事件執(zhí)行回路將信息連接到I/O狀態(tài)尋址回路134以通過控制通道133起動(dòng)另一頁(yè)的I/O狀態(tài)存儲(chǔ)器132。
圖6描述了圖5中所述的輸入/輸出回路的功能塊144的一詳細(xì)電路圖。電路172說明一端1的輸入/輸出電路。其具有七個(gè)識(shí)別回路173至174分別對(duì)應(yīng)于如實(shí)施例規(guī)格所限定的端2至端8。各輸入/輸出回路端自該輸入/輸出形態(tài)存儲(chǔ)器131接收一三個(gè)位數(shù)的代碼151以限定該端的型態(tài)。該三個(gè)位數(shù)的代碼被解碼以藉由8線解碼器157來選擇八個(gè)可能的輸入/輸出型態(tài)158之一。
鑒定回路162被設(shè)計(jì)為對(duì)藉由“R”、“F”、“1”或“0”輸入型態(tài)代碼特征的信號(hào)負(fù)責(zé)。當(dāng)該端藉由輸入型態(tài)代碼“R”、“F”、“1”或“0”被成型為一輸入端,一起動(dòng)該鑒定回路162之對(duì)應(yīng)部分的啟動(dòng)線160對(duì)應(yīng)選擇出的輸入型態(tài)以監(jiān)測(cè)自端片171接收到的信號(hào)。倘一合格的觸發(fā)信號(hào)被檢測(cè),該鑒定回路的啟動(dòng)線170允許對(duì)應(yīng)的事件地址計(jì)數(shù)器代碼經(jīng)過以通過邏輯回路156到圖5的事件尋址回路147。該自圖5的I/O形態(tài)存儲(chǔ)器132獲得的事件地址計(jì)數(shù)器代碼152為一五個(gè)位數(shù)代碼以定址在如實(shí)施例裝置的設(shè)計(jì)內(nèi)容中所限定的32個(gè)不同的事件。
倘該端藉由“H”、“L”或“P”被成型為一輸出端,該鑒定回路通常被無效的除非存在一需要該端在同一時(shí)刻既充當(dāng)一輸入端又充當(dāng)一輸出端的特殊用途的設(shè)計(jì)。該輸出驅(qū)動(dòng)器161依據(jù)控制信號(hào)159提供一適當(dāng)驅(qū)動(dòng)的輸出信號(hào)到該端片171。倘該輸出信號(hào)為一除“H”或“L”電平外的波形信號(hào),如在設(shè)計(jì)規(guī)格中所限定的6Hz的脈沖,需要一輸出信號(hào)源提供該波形信號(hào)以通過端腳被傳送。在一實(shí)例中,一6Hz的信號(hào)來源于事件執(zhí)行回路138或一獨(dú)立的振蕩回路。當(dāng)“P”代碼被選擇出時(shí),該信號(hào)被導(dǎo)至端片171。應(yīng)當(dāng)注意該設(shè)計(jì)使得一音頻信號(hào)可通過除圖5之選擇端140外的輸入/輸出端的任一而產(chǎn)生。
倘該端被成形成一輸入線,輸出驅(qū)動(dòng)器回路通常為無效的。倘該端以一由符號(hào)“X”標(biāo)識(shí)的無關(guān)狀態(tài)或高阻抗?fàn)顟B(tài)成形,該鑒定回路與該輸出驅(qū)動(dòng)器回路為無效的。為了降低控制裝置的成本,一些端可被設(shè)定僅為輸入端以節(jié)省輸出驅(qū)動(dòng)器回路的成本;而一些端可被設(shè)定為僅輸出端以節(jié)省對(duì)應(yīng)的鑒定回路的成本。
應(yīng)當(dāng)注意所設(shè)定的八I/O型態(tài)為示范性的,任何特定功能的鑒定回路與輸出信號(hào)發(fā)生器可被加入以增強(qiáng)控制裝置的能力。例如,一DTMF音調(diào)的檢測(cè)可作為鑒定回路被加入且在控制裝置作為一可程式化測(cè)試裝置而被使用以用于電話產(chǎn)品之測(cè)試的情況下,一頻率掃描信號(hào)可作為一輸出信號(hào)而被產(chǎn)生。
注意力現(xiàn)在指向說明圖5的輸入/輸出形態(tài)存儲(chǔ)器132與I/O尋址回路134的一較佳實(shí)施例的圖7。存儲(chǔ)器184包括一頁(yè)所需的數(shù)據(jù)以成形八I/O端用于I/O形態(tài)#0。該存儲(chǔ)器頁(yè)包括八字節(jié)的數(shù)據(jù)以成形八端。表示該八I/O構(gòu)成組合的各數(shù)據(jù)字節(jié)的起始的三個(gè)位數(shù)限定一端的I/O型態(tài)并通過數(shù)據(jù)總線192被耦連到圖6中的3至8線解碼器157。最后的五個(gè)位數(shù)代表32項(xiàng)事件的起始地址。該五個(gè)位數(shù)數(shù)據(jù)通過數(shù)據(jù)總線192被耦連到圖6的邏輯回路156以當(dāng)一認(rèn)可的輸入觸發(fā)被接收到時(shí)傳送到事件尋址回路。由于該三個(gè)位數(shù)數(shù)據(jù)與該五個(gè)位數(shù)數(shù)據(jù)是成對(duì)地工作,其更便于成為如由較佳實(shí)施例所述的相同代碼的部分,或被安排在不同存儲(chǔ)器塊件中以藉由類似的操作原理而被存取。
倘一I/O端作為一輸出端被成形,該五個(gè)位數(shù)數(shù)據(jù)的內(nèi)容與事件尋址回路無關(guān)。在此情況上,該五個(gè)位數(shù)數(shù)據(jù)可被用于進(jìn)一步限定輸出信號(hào)的輸出特性如比率因子以調(diào)整輸出信號(hào)的振幅。在另一實(shí)施例中,該起始的三個(gè)位數(shù)數(shù)據(jù)可被成形以限定一輸出特征位與七個(gè)輸入型態(tài)。當(dāng)該輸出標(biāo)志位被檢測(cè)時(shí),剩下的五個(gè)位數(shù)數(shù)據(jù)被用以設(shè)定哪一類型的輸出信號(hào)產(chǎn)生。此安排有效地?cái)U(kuò)大了輸入/輸出構(gòu)型的數(shù)目以藉由8個(gè)位數(shù)格式被存取而并不進(jìn)一步增加存儲(chǔ)器體積大小,但需要更多的硬件以對(duì)存儲(chǔ)器的前三位數(shù)解碼并當(dāng)輸出標(biāo)志被測(cè)得時(shí),以存儲(chǔ)器的后五個(gè)位數(shù)做為控制。
實(shí)施例180包括16頁(yè)的I/O形態(tài)存儲(chǔ)器以代表16個(gè)不同的可程式化I/O形態(tài)。僅有一I/O形態(tài)的某一時(shí)刻作為主動(dòng)形態(tài)被設(shè)定。如前所述,其可容易地?cái)X取I/O狀態(tài)#0作為啟動(dòng)時(shí)預(yù)設(shè)的I/O形態(tài)。圖5的I/O狀態(tài)尋址回路134可藉由圖7的4至16線解碼器182或一16位的寄存器。無論何時(shí)事件執(zhí)行回路收到一新的主動(dòng)的I/O形態(tài)地址,該信息被送入其后對(duì)地址解碼的解碼器182并使得16頁(yè)存儲(chǔ)器中的一頁(yè)成為主動(dòng)的I/O形態(tài)存儲(chǔ)器組件。該儲(chǔ)存頁(yè)的存儲(chǔ)器其后被下行填入輸入/輸出回路用于形成I/O端。
圖8說明事件數(shù)據(jù)存儲(chǔ)器組件、事件執(zhí)行回路與有關(guān)的尋址回路的一實(shí)施例。五位數(shù)的事件指示器205被送入其后選取儲(chǔ)存在一查詢表312中32項(xiàng)事件起始地址之一的一5至32行地址解碼器。各事件起始地址限定一位于事件數(shù)據(jù)存儲(chǔ)器213中的事件的起始點(diǎn)。該起始地址被填入事件地址計(jì)數(shù)器211并觸發(fā)依據(jù)自事件數(shù)據(jù)213獲得的數(shù)據(jù)而產(chǎn)生輸出信號(hào)的事件執(zhí)行回路202。事件執(zhí)行回路202依據(jù)需要由習(xí)知技術(shù)中的各種一般的回路組成。在一聲音合成控制器的實(shí)例中,事件執(zhí)行回路包括一常規(guī)聲音合成晶片所需的硬件回路,如PCM解碼器、D/A轉(zhuǎn)換器且儲(chǔ)存在事件數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)為編碼的/壓縮的聲音數(shù)據(jù)與有關(guān)的時(shí)間數(shù)據(jù)。事件執(zhí)行回路的另一實(shí)施例可由DTMF音調(diào)發(fā)生器、音律發(fā)生器與為控制回路所需的任何其它的信號(hào)操縱或發(fā)生回路。在這些情況中,事件數(shù)據(jù)存儲(chǔ)器儲(chǔ)存欲被產(chǎn)生信號(hào)的數(shù)據(jù)。由事件執(zhí)行回路產(chǎn)生的輸出信號(hào)被耦合到另一輸出端204或耦合到圖6的輸出驅(qū)動(dòng)器161。
倘事件數(shù)據(jù)存儲(chǔ)器包括一指向另一由圖1的子事件24指示的目標(biāo)事件的執(zhí)行的子事件,該目標(biāo)事件的地址藉由事件執(zhí)行回路202通過通道209被填入地址計(jì)數(shù)器211以觸發(fā)目標(biāo)事件的執(zhí)行。倘事件存儲(chǔ)器包括一指向由圖1的子事件22所示者,觸發(fā)另一輸入/輸出形態(tài)的子事件,4位數(shù)的輸入/輸出形態(tài)尋址信號(hào)通過通道201被送到圖7的地址解碼器182以觸發(fā)所欲求的輸入/輸出形態(tài)存儲(chǔ)器頁(yè)。
第5至32行事件地址解碼器210與事件地址查詢表212可由另一五位數(shù)地址的存儲(chǔ)器與“q”位數(shù)數(shù)據(jù)取代,其中該“q”位數(shù)表示通常大于5位數(shù)的事件數(shù)據(jù)存儲(chǔ)器的地址長(zhǎng)度。行解碼器于回路被制造在實(shí)際的集成電路中時(shí)被用以節(jié)省存儲(chǔ)器空間與總的掃描路線。類似地,圖6的3至8行解碼器157可藉由使用一8位數(shù)存儲(chǔ)器而被消除以直接地形成I/O端;及圖7的4至16行解碼器可藉由一16位數(shù)存儲(chǔ)器或一16位數(shù)的移位寄存器取代以選擇16頁(yè)I/O形態(tài)存儲(chǔ)器之一。
在事件執(zhí)行回路的最簡(jiǎn)實(shí)施例中,一事件的事件數(shù)據(jù)存儲(chǔ)器213可為一單一代碼的儲(chǔ)存數(shù)據(jù)以設(shè)定哪個(gè)事件執(zhí)行回路的硬件發(fā)生器將被打開并設(shè)定事件將遵循的地址。在此情況下事件地址計(jì)數(shù)器301與通過通道208增加計(jì)數(shù)器的時(shí)鐘回路非為必需的。在聲音合成器晶片的情況下,需要一時(shí)鐘逐步地讀取該編碼信號(hào)的取樣并控制D/A轉(zhuǎn)換器。在一更為復(fù)雜的實(shí)施例中,事件執(zhí)行回路202可包括一微處理器基本結(jié)構(gòu)。盡管整個(gè)硬件的成本并不因此降低很多,但本發(fā)明的實(shí)施例提供對(duì)輸入觸發(fā)的瞬間響應(yīng)。除此之外,本發(fā)明支持微處理器并使其解除轉(zhuǎn)態(tài)I/O端的過程,因此,整個(gè)響應(yīng)時(shí)間被進(jìn)一步改進(jìn)。更重要地,該結(jié)構(gòu)有效地提供程序師一創(chuàng)新的親合性的程式化方法。
在大規(guī)模生產(chǎn)中,圖5至圖8所示的實(shí)施例將被制造于一集成電路中。需要一簡(jiǎn)單的解碼過程以將應(yīng)用例的程式化的數(shù)據(jù),如圖4A的表100與120轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)以被儲(chǔ)存在輸入/輸出形態(tài)存儲(chǔ)器體塊132、圖5的事件數(shù)據(jù)存儲(chǔ)器149與圖8的查詢表302中。遵循制造一集成電路的標(biāo)準(zhǔn)過程,這些二進(jìn)制的數(shù)據(jù)被首先轉(zhuǎn)換為一光罩且所獲的光罩其后通過常規(guī)集成電路制造過程被用以制造集成電路。通常在大規(guī)模生產(chǎn)中,輸入/輸出形態(tài)存儲(chǔ)器132、圖5的事件數(shù)據(jù)存儲(chǔ)器149與圖8的查詢表212作為只讀存儲(chǔ)器(ROM)被制造。在程序發(fā)展過程的情況中,取代上述只讀存儲(chǔ)器的一特殊的包括讀與寫存儲(chǔ)器(RAM)、可擦除可程式化程序只讀存儲(chǔ)器(EPROM與EEPROM)、或一時(shí)間可程式化只讀存儲(chǔ)器(OTP)為可取的以對(duì)程序進(jìn)行試驗(yàn)并提供一顯示樣本而不經(jīng)歷消耗整個(gè)集成電路制造過程的高成本與時(shí)間。該轉(zhuǎn)換的程序數(shù)據(jù)其后通過一外部數(shù)據(jù)源被填入這些存儲(chǔ)器區(qū)域。
為了增大控制裝置的可程式化特征,一限量的讀寫存儲(chǔ)器(RAM)或寄存器為可取的以被加入上述的程序可控存儲(chǔ)器區(qū)域。圖9說明了一除了兩讀與寄存器被加入事件查詢表212外,與圖8的實(shí)施例基本相同的實(shí)施例。該第一寄存器被命名為“計(jì)時(shí)器(TIMER)”寄存器并被用以標(biāo)識(shí)事件以在一計(jì)時(shí)器計(jì)數(shù)結(jié)束時(shí)被執(zhí)行。起動(dòng)“計(jì)時(shí)器寄存器(TIMER REGISTER)”230的脈沖線234自位于事件執(zhí)行回路202中的計(jì)時(shí)器計(jì)數(shù)獲得時(shí)間信號(hào)。當(dāng)對(duì)事件表程式化程序時(shí),一子事件可以圖10A中所示的形式被標(biāo)識(shí)以起動(dòng)計(jì)時(shí)器計(jì)數(shù)。
依據(jù)事件1(EVENT#1)291的程式化,子事件293“TIMER6SECEVENT#3”當(dāng)與先前圖4B的表120中所示的時(shí)間格式“DELAY 0.5SEC”比較時(shí)是具相同的操作,除了此時(shí)一計(jì)時(shí)器與隨之的子事件294平行工作且其當(dāng)6秒的時(shí)間周期結(jié)束時(shí)起動(dòng)事件3(EVENT#3)的執(zhí)行。亦為可取的是,于該計(jì)時(shí)期正在工作的期間內(nèi)重新啟動(dòng)該計(jì)時(shí)器或中止定時(shí)操作。該重新啟動(dòng)藉由重新尋址“TIMERt SECEVENT#K”子事件來簡(jiǎn)單地獲得。為了中止計(jì)時(shí)器計(jì)數(shù)需另一子事件以“計(jì)時(shí)器關(guān)閉(TIMER OFF)”標(biāo)識(shí)。
讀寫寄存器231使得事件可被間接地尋址。該特征允許一事件的目標(biāo)地址不時(shí)地依據(jù)程序流程需要而改變。當(dāng)為事件表程式化時(shí),一子事件可以圖10B中所示的方法被標(biāo)織以起動(dòng)一事件的間接地址。當(dāng)一上升緣首先依據(jù)代碼元件305而由腳1,304接收時(shí),事件1(EVENT#1)311限定“可變事件”的地址。每次當(dāng)TG1被觸發(fā)時(shí),事件4(EVENT#4)317被執(zhí)行。事件4(EVENT#4)首先關(guān)閉所有觸發(fā)腳并其后再現(xiàn)一場(chǎng)聲器的聲音。此后另一聲音依據(jù)“可變事件”的地址被發(fā)現(xiàn)。當(dāng)可變事件被限定以如事件1(EVENT#1)中相同于事件2(EVENT#2)時(shí),一段時(shí)期的警報(bào)音其后產(chǎn)生。可以見及事件2(EVENT#2)再次限定“可變事件”以成為事件3(EVENT#3)316,故而下一時(shí)刻當(dāng)腳1接收一合格的觸發(fā)信號(hào)且事件4(EVENT#4)被執(zhí)行時(shí),該揚(yáng)聲器聲音將如事件3(EVENT#3)316所指繼之以一引擎開動(dòng)聲音。
無論何時(shí)一當(dāng)可變事件(EVENT#VAR)=事件K(EVENT#K)的格式被接收,事件K(EVENT#K)的地址被置于圖9的“可變事件寄存器”231中。當(dāng)可變事件(EVENT#VAR)在一后來的時(shí)刻被尋址時(shí)藉由“可變事件寄存器”231的內(nèi)容尋址的事件可被執(zhí)行。
該簡(jiǎn)單的單頁(yè)程序有利于程式化過程的調(diào)整過程。圖11描述一調(diào)整工具的較佳實(shí)施例其中整個(gè)程序被顯示于一視屏上且程序流程被模擬以促進(jìn)交談式除錯(cuò)過程。該主動(dòng)的I/O形態(tài)與執(zhí)行中的事件常被高亮度點(diǎn)亮在屏幕上。該觸發(fā)腳按鈕345、346與鑒定信號(hào)按鈕341、342、343與344被設(shè)計(jì)用于程序控制器模擬觸發(fā)一輸入腳。當(dāng)控制裝置藉由觸發(fā)“起動(dòng)”按鈕338而被起動(dòng)時(shí),輸入/輸出狀態(tài)0(I/O State#0)321被為最亮。腳1其后藉由觸發(fā)P1按鈕345與上升緣按鈕341而被觸發(fā)。事件1(EVENT#1)的子事件其后依據(jù)邏輯流程被逐一高亮度點(diǎn)亮且320的高亮度區(qū)域依據(jù)一I/O形態(tài)被設(shè)定為主動(dòng)的而變化。假定子事件332被執(zhí)行,I/O狀態(tài)4(I/OState#4)323其后正成為主動(dòng)狀態(tài)并被高亮度點(diǎn)亮。當(dāng)腳1在此時(shí)被觸發(fā)時(shí),程序流程被中斷且事件2(EVENT#2)其后被執(zhí)行。一自動(dòng)運(yùn)行按鈕336使得模擬器可藉由自動(dòng)地逐一觸發(fā)鑒定的輸入腳而自動(dòng)地嘗試所有可能的程序運(yùn)行組合。任何開端程序流程或閉合環(huán)路在自動(dòng)運(yùn)行過程完成后被逐一羅列。該程序控制器其后可檢查是否開端程序流程或閉合環(huán)路為所欲求者。
該模擬器除錯(cuò)工具通過一具外部應(yīng)用回路的發(fā)展系統(tǒng)的一連接回路藉由連接八I/O腳而可被簡(jiǎn)便地調(diào)整到回路模擬器中的一即時(shí)狀態(tài)。類似于程序程式化方法,由于邏輯流程被清晰高亮度顯示于屏幕上以實(shí)際應(yīng)用中的類似方式被逐一掃描,故該調(diào)整工具的較佳實(shí)例為一使用者極其友好調(diào)整工具以支持程序控制器。除此之外,無復(fù)雜的模擬器或回路模擬器控制指令將由使用者來學(xué)習(xí)。
由于較佳實(shí)施例不尋常的存儲(chǔ)器結(jié)構(gòu),該輸入/輸出形態(tài)存儲(chǔ)器最好與主要的事件存儲(chǔ)器分離以當(dāng)設(shè)計(jì)實(shí)際的集成電路時(shí)降低總的內(nèi)部過載。如圖12所示輸入/輸出形態(tài)存儲(chǔ)器的位置最好依據(jù)可尋址的輸入/輸出端的數(shù)目而被分為不同的小存儲(chǔ)器塊。例如,如圖7中所示,每頁(yè)的起始字節(jié)的存儲(chǔ)器與端1有關(guān)。最好是如圖6所示,將所有16頁(yè)(16I/O形態(tài))的起始字節(jié)184至186組合在一起并鄰接端1定位該存儲(chǔ)器或該相關(guān)的輸出驅(qū)動(dòng)器161與鑒定回路162。圖12中383的位置代表了集成電路380中端1接腳方塊。382的位置代表了圖6有關(guān)驅(qū)動(dòng)器161及鑒定回路162。381的位置代表了圖7中184至186的16頁(yè)I/O組合形態(tài)中的首個(gè)8位字節(jié)。386的位置代表主要事件存儲(chǔ)器。該位置與各有關(guān)接腳點(diǎn)相鄰的I/O形態(tài)存儲(chǔ)器是分離的。此設(shè)計(jì)降低了集成電路的晶片尺寸并因此為制造商與使用者提供成本優(yōu)勢(shì)。集成電路的該種經(jīng)濟(jì)的結(jié)構(gòu)可被變更到一建立在控制裝置基礎(chǔ)上的微處理器。該微處理器將被調(diào)整到包括附加的用于限定I/O端型態(tài)的存儲(chǔ)器體塊。
由前所述,可以理解控制裝置的硬件實(shí)施例在此已被充分地公開,使電路工程師可發(fā)展一種低成本的可編程可控裝置以有效地與所發(fā)明的使用者友好程式化方法相互配合。例如,輸入/輸出端的定義不限于集成電路的接端。其也可成為包含于同一集成電路體內(nèi)另一功能裝置的“內(nèi)接”的輸入/輸出端。如顯示于圖5事件執(zhí)行電路138可代表一時(shí)間計(jì)數(shù)器,其滿溢信號(hào)139觸動(dòng)輸入/輸出電路144的某一“內(nèi)置”輸入端。
權(quán)利要求
1.一種可編程控制裝置,其特征在于至少包括K端,至少一第一端設(shè)為一輸入端及一第二端設(shè)為一輸出端被成形;至少一鑒定電路裝置,可對(duì)該輸入端接收的特征信號(hào)產(chǎn)生響應(yīng);一第一存儲(chǔ)器,儲(chǔ)存數(shù)據(jù)以限定一或多個(gè)事件而該事件的各個(gè)具一位于該第一存儲(chǔ)器的可尋址范圍內(nèi)的對(duì)應(yīng)的起始地址;一(n+m)位數(shù)數(shù)據(jù)格式的第二存儲(chǔ)器,而該m數(shù)位數(shù)據(jù)是用以限定一端的型態(tài),而該n位數(shù)數(shù)據(jù)是周以當(dāng)該端作為一輸入端被成形時(shí)限定該第一存儲(chǔ)器的事件起始地址;一事件執(zhí)行回路裝置,用以在事件執(zhí)行時(shí),產(chǎn)生至少一第一事件輸出信號(hào)與一第二事件輸出信號(hào),而該第一事件輸出信號(hào)被耦合到該輸出端以用于產(chǎn)生一輸出信號(hào);一第一尋址回路裝置,對(duì)該鑒定電路裝置響應(yīng),起動(dòng)該事件執(zhí)行裝置以執(zhí)行該藉由該事件起始地址限定的該第一事件;以及一第二尋址回路裝置,對(duì)該第二事件輸出信號(hào)向應(yīng),以適時(shí)修正該第二存儲(chǔ)器的當(dāng)前地址。
2.如權(quán)利要求所述的可編程控制裝置,其特征在于該事件執(zhí)行回路裝置產(chǎn)生一第三事件輸出信號(hào),中斷該第一尋址回路裝置以激發(fā)一第二事件的地址并執(zhí)行該第二事件。
3.如權(quán)利要求1所述的編程控制裝置,其特征在于還包括一起動(dòng)回路裝置,藉以定義出該可編程控制裝置于起動(dòng)時(shí)的狀況。
4.如權(quán)利要求1所述的可編程控制裝置,其特征在于至少一端為一輸入/輸出端并且該第二存儲(chǔ)器的該m位數(shù)數(shù)據(jù)限定該端的輸入及/或輸出形式。
5.如權(quán)利要求1所述的可編程控制裝置,其特征在于該第二存儲(chǔ)器包括一標(biāo)志,以設(shè)定該輸入/輸出端為一輸出端或高阻抗端,且該n位數(shù)是用以進(jìn)一步限定該通過該輸出端欲被產(chǎn)生的輸出信號(hào)的特性。
6.如權(quán)利要求1所述的可編程控制裝置,其特征在于該鑒定電路裝置是對(duì)至少一個(gè)以下的特征信號(hào)響應(yīng);以一上升緣特征的信號(hào)、以一下降緣特征的信號(hào)、邏輯高電平信號(hào)與邏輯低電平信號(hào)。
7.如權(quán)利要求1所述的可編程控制裝置,其特征在于該輸出信號(hào)包括至少一個(gè)如下的信號(hào)邏輯高電平;邏輯低電平;脈沖;與高阻抗?fàn)顟B(tài)。
8.如權(quán)利要求1所述的可編程控制裝置,其特征在于該事件執(zhí)行裝置包括一信號(hào)發(fā)生器。
9.如權(quán)利要求1所述的可編程控制裝置,其特征在于該鑒定電路裝置被耦合到一個(gè)或多個(gè)輸入端。
10.如權(quán)利要求1所述的可編程控制裝置,其特征在于該第一存儲(chǔ)器儲(chǔ)存描述一音頻信號(hào)的編碼的數(shù)據(jù)。
11.如權(quán)利要求10所述的可編程控制裝置,其特征在于該事件執(zhí)行裝置產(chǎn)生一對(duì)應(yīng)于該編碼數(shù)據(jù)的音頻信號(hào)。
12.如權(quán)利要求1所述的可編程控制裝置,其特征在于還包括一寄存器以指示一將被執(zhí)行的事件的地址。
13.如權(quán)利要求12所述的可編程控制裝置,其特征在于該第一存儲(chǔ)器儲(chǔ)存編碼的定時(shí)數(shù)據(jù);該控制裝置還包括一計(jì)數(shù)器以操控該編碼的定時(shí)數(shù)據(jù);及該暫存器依據(jù)該計(jì)數(shù)器的計(jì)數(shù)過程指示一將被執(zhí)行的事件的地址。
14.如權(quán)利要求12所述的可編程控制裝置,其特征在于該寄存器的內(nèi)容藉由儲(chǔ)存于該第一存儲(chǔ)器中的一事件限定。
15.如權(quán)利要求1所述的可編程控制裝置,其特征在于該第一與第二存儲(chǔ)器包括至少一個(gè)如下的存儲(chǔ)器只讀存儲(chǔ)器;可擦除可程式化只讀存儲(chǔ)器;一次可程式化只讀存儲(chǔ)器;以及讀寫存儲(chǔ)器。
16.如權(quán)利要求1所述的可編程控制裝置,其特征在于該尋址回路裝置包括一查詢表,以限定該第一存儲(chǔ)器中的事件的起始地址,該查詢表是藉由該第二存儲(chǔ)器的n位數(shù)數(shù)據(jù)來尋址。
17.如權(quán)利要求1所述的可編程控制裝置,其特征在于該第二存儲(chǔ)器的該n個(gè)位數(shù)數(shù)據(jù)存儲(chǔ)器與m個(gè)位數(shù)數(shù)據(jù)存儲(chǔ)器為不同的地址,并且該第二尋址回路裝置限定該n個(gè)位數(shù)存儲(chǔ)器與m個(gè)位數(shù)存儲(chǔ)器的相應(yīng)現(xiàn)在地址。
18.如權(quán)利要求1所述的可編程控制裝置,其特征在于該裝置是包括于一集成電路中。
19.如權(quán)利要求18所述的可編程控制裝置,其特征在于至少兩端位于該集成電路內(nèi)的分離的位置上,且該第二存儲(chǔ)器分布于接近該端點(diǎn)或該鑒定電路裝置的各個(gè)位置上。
20.如權(quán)利要求1所述的可編程控制裝置,其特征在于k為一等于或小于16的整數(shù);m限定上至16個(gè)輸入/輸出型式;n限定上至128個(gè)事件起始地址;以及該第二尋址回路裝置限定該第二存儲(chǔ)器上至64個(gè)地址。
21.一種為一控制裝置程式化程序以對(duì)一個(gè)或多個(gè)外部認(rèn)可的電信號(hào)響應(yīng),以執(zhí)行一或多項(xiàng)事件的程序程式化方法;該控制裝置包括至少一端作為一輸入端及一端作為一輸出端,該程式化方法最少包括的程序?yàn)?1)設(shè)定x端形態(tài),其中x為一等于或大于1的整數(shù);(2)設(shè)定y事件,其中y為一等于或大于1的整數(shù);(3)對(duì)于程序(1)的每一形態(tài),令各輸入端設(shè)定一輸入鑒定條件;(4)對(duì)于程序(3)的各輸入端,當(dāng)被耦連到該輸入端的該輸入信號(hào)滿足該輸入鑒定條件時(shí),更設(shè)定一將被執(zhí)行的事件;(5)對(duì)于程序(1)的每一形態(tài),為各輸出端設(shè)定一輸出信號(hào);(6)設(shè)定其一形態(tài)轉(zhuǎn)變?yōu)橹鲃?dòng)形態(tài)。
22.如權(quán)利要求21所述的程式化方法,其特征在于還包括一設(shè)定至少其一事件以包括p子事件的程序,其中p為一等于或大于2的整數(shù)。
23.如權(quán)利要求22所述的程式化方法,其特征在于還包括一設(shè)定一事件或子事件,產(chǎn)生至少一項(xiàng)如下效果的程序(a)產(chǎn)生一音頻信號(hào);(b)產(chǎn)生一定時(shí)信號(hào);(c)產(chǎn)生一邏輯高/低電平信號(hào);(d)產(chǎn)生一脈沖信號(hào);(e)起動(dòng)另一事件;以及(f)設(shè)定另一形態(tài)作為該主動(dòng)的形態(tài)。
24.如權(quán)利要求23所述的程式化方法,其特征在于還包括一藉該定時(shí)信號(hào)結(jié)束時(shí),設(shè)定一欲被執(zhí)行的事件的程序。
25.如權(quán)利要求21所述的程式化方法,其特征在于至少該其一事件是為一可變事件,該程式化方法更包括使該可變事件與另一限定的事件相等的程序。
26.如權(quán)利要求21所述的程式化方法,其特征在于至少該端之一為一可程式化的輸入/輸出端,且該程式化方法還包括設(shè)定該輸入/輸出端為一輸入端、一輸出端、一輸入/輸出端或一高阻抗端的程序。
27.如權(quán)利要求21所述的程式化方法,其征特在于還包括一使程式規(guī)格至少構(gòu)成兩區(qū)域的程序,其中該第一區(qū)域設(shè)定一或多個(gè)端形態(tài)的特性,且該第二區(qū)域設(shè)定一或多個(gè)事件與子事件。
28.如權(quán)利要求21所述的程式化方法,其特征在于還包括一藉由該程序設(shè)定的數(shù)據(jù)部分組織至少一表格形式的程序。
29.如權(quán)利要求21所述的程式化方法,其特征在于還包括一將形態(tài)與事件規(guī)范翻譯為數(shù)字?jǐn)?shù)據(jù),以被儲(chǔ)存于該控制裝置供事件執(zhí)行的程序。
30.如權(quán)利要求29所述的程式化方法,其特征在于還包括將翻譯一光罩上的該數(shù)字?jǐn)?shù)據(jù)以制造該控制裝置的程序。
31.如權(quán)利要求21所述的程式化方法,其特征在于還包括一將形態(tài)與事件翻譯為一不同格式的輔助組合語(yǔ)言的程序。
32.如權(quán)利要求21所述的程式化方法,其特征在于還包括以下程序以互相配合地模擬一顯示元件上的控制裝置的操作(7)顯示至少一個(gè)形態(tài);(8)顯示至少一事件;(9)指示該主動(dòng)形態(tài);(10)設(shè)定一端以接收一合格的激發(fā)信號(hào);以及(11)指示及/或激發(fā)執(zhí)行中的該事件或子事件。
33.如權(quán)利要求32所述的程式化方法,其特征在于還包括一編輯該顯示的數(shù)據(jù)的程序。
34.如權(quán)利要求32所述的程式化方法,其特征在于還包括一將兩區(qū)域與一包括方塊與連該方塊的路徑的流程圖相連的程序,其中各方塊對(duì)應(yīng)該第一區(qū)域的一或多個(gè)端形態(tài),且各路徑對(duì)應(yīng)該第二區(qū)域之一事件。
35.如權(quán)利要求32所述的程式化方法,其特征在于還包括一安排一對(duì)該形態(tài)與事件的規(guī)范響應(yīng)的輸入/輸出回路裝置的程序;且將該輸入/輸出回路裝置與一外部應(yīng)用回路連接,藉此模擬該控制裝置的操作。
36.如權(quán)利要求21所述的程式化方法,其特征在于該x端形態(tài)與該y事件的規(guī)范不必被列于相互的序列關(guān)系中。
37.如權(quán)利要求21所述的程式化方法,其特征在于該程式化程序并未包括任何一行指令組,該指令組包括藉由一操作及至少一個(gè)運(yùn)算元限定的指令。
38.一種包含于一集成電路中的可程式化控制裝置,其特征在于包括輸入/輸出回路裝置,包括兩個(gè)或多個(gè)端,該端的各個(gè)作為輸入及/或輸出端,且鑒定電路裝置對(duì)一或多個(gè)由一輸入端接收的特征信號(hào)響應(yīng),而該端位于該集成電路內(nèi)的分離位置上;事件執(zhí)行回路裝置對(duì)該鑒定裝置的反應(yīng)據(jù)以響應(yīng),以執(zhí)行一事件并起動(dòng)該輸出回路裝置以產(chǎn)生一輸出信號(hào);存儲(chǔ)器接于該事件執(zhí)行回路裝置與該輸入/輸出回路裝置之間,用于儲(chǔ)存數(shù)據(jù)以限定至少一個(gè)該端的對(duì)應(yīng)的可程式化特性,其中該存儲(chǔ)器分布于最接近該輸入/輸出回路裝置的分離位置上。
39.如權(quán)利要求38所述的可程式化裝置,其特征在于存儲(chǔ)器更儲(chǔ)存欲被執(zhí)行的事件地址,以對(duì)該鑒定電路裝置反應(yīng)。
40.如權(quán)利要求21所述的程式化方法,其特征在于還包括一程序以限定該控制裝置的起動(dòng)狀態(tài)。
41.如權(quán)利要求21所述的程式化方法,其特征在于還包括一程序以說明至少部分形態(tài)與/或事件的程式,該程式是應(yīng)用它種程式語(yǔ)言寫成的。
42.如權(quán)利要求1或38所述的可編程控制裝置,其輸入及/或輸出端是連接至一內(nèi)置于該可編程控制裝置之中的一功能裝置。
43.如權(quán)利要求21所述的可編程方法,其輸入及/或輸出端是連接至一內(nèi)置于該控制裝置之中的一功能裝置。
全文摘要
可應(yīng)用于一聲音合成器的可編程控制設(shè)備,被公開為具一可編程方法以被構(gòu)成于一限定輸入/輸出端(12)的形態(tài)(13、14、15、16)的第一表格形式(10)與一限定事件(21、22、23、24)以于認(rèn)可的輸入信號(hào)接收時(shí)被執(zhí)行的第二列表(20)。包括預(yù)定I/O狀態(tài)存儲(chǔ)器以設(shè)定不同I/O形態(tài)(11)的硬件實(shí)施例亦被公開。該硬件實(shí)施例與可編程方法緊密相關(guān),以制成一低成本可編程控制設(shè)備。
文檔編號(hào)G06F9/06GK1157438SQ9611345
公開日1997年8月20日 申請(qǐng)日期1996年9月27日 優(yōu)先權(quán)日1995年10月2日
發(fā)明者林亞夫 申請(qǐng)人:林亞夫