SX系列通信控制器
摘要:介紹SX系理單片機(jī)的性能、內(nèi)部結(jié)構(gòu)、端口特性和存儲器體系結(jié)構(gòu),說明虛擬外設(shè)這一新的其廣闊的應(yīng)用前景。SX系列單片機(jī)具有高速運(yùn)行和靈活的I/O特性,可作為一個嵌入式設(shè)備應(yīng)用在通信類的產(chǎn)品設(shè)計中。
本文引用地址:http://m.butianyuan.cn/article/244626.htm關(guān)鍵詞:嵌入式Internet設(shè)備 RISC結(jié)構(gòu) 配置端口狀態(tài) 存儲器體系結(jié)構(gòu) 虛擬外設(shè)
SX52BD(以及SX48BD)是SX系列產(chǎn)品,是采用CMOS工敢制造的、可配置的通信控制器。它的操作頻率可達(dá)到50/75/100MHz,是一種高速計算機(jī);其大部分指令為單周期指令,運(yùn)行速度可達(dá)到一般MCU的20倍;靈活的I/O特性使之具有高效的實時控制功能。正因為它的高速運(yùn)行特性,設(shè)備可以用軟件模塊(虛擬外設(shè))替代一部分過去由硬件實現(xiàn)的實時功能,這是SX系列的最重要的特點。目前可以實現(xiàn)的虛擬外設(shè)大多用于通信設(shè)備,如通信接口和Internet連接協(xié)議等。下面主要從它的硬件結(jié)構(gòu)進(jìn)行說明。
1 主要性能和特點
①CPU性能?;赗ISC結(jié)構(gòu),采用壓縮的指令系統(tǒng),除branch外大部分為單周期指令;操作頻率最高可達(dá)100MHz,此時指令周期10ns,內(nèi)部中斷響應(yīng)時間達(dá)30ns;可以通過運(yùn)行時間內(nèi)讀代碼(IREAD指令)進(jìn)行快速平臺查找;它能克服一般MCU運(yùn)行速度慢的缺點,使得SX系列的內(nèi)部程序達(dá)到硬件實時控制功能的目的。
②硬件外設(shè)特性。內(nèi)部包含2個(帶8位預(yù)定標(biāo)器的)16位定時器,運(yùn)行方式有軟件時鐘模式、PWM模式、同步PWM/捕捉模式以及外部事件模式;有一個(帶8位預(yù)定標(biāo)器的)可編程的8位定時/計數(shù)器(RTCC)和看門狗計時器(共享RTCC預(yù)定標(biāo)器);內(nèi)部包含模擬比較器,這對于一般的應(yīng)用來說顯得十分方便。
③由于SX系列高速運(yùn)行特性,再加上靈活的I/O功能,設(shè)備就可以用軟件模塊(虛擬外設(shè))代替那些硬件所具有的準(zhǔn)確的實時功能。目前可以實現(xiàn)的虛擬外設(shè)大多用于通信設(shè)備(例如通信接口和Internet連接協(xié)議等)以及作為運(yùn)行速度比較高的信號發(fā)生裝置和轉(zhuǎn)換裝置。
④編程和調(diào)試支持??梢酝ㄟ^串口或并口對芯片進(jìn)行在線編程(例如可以接振蕩器引腳進(jìn)行在線串行編程),芯片具有在線調(diào)試支持邏輯。對于實時仿真、全程調(diào)試,可以由第三工具供應(yīng)商提供完備的開發(fā)環(huán)境。這些軟件支持包括:即時可用的虛擬外設(shè)模塊庫、虛擬外設(shè)綜合實例以及用于通信的應(yīng)用軟件工具包等。
SX設(shè)備在襯能夠提供新的思路和解決辦法,一方面它可對應(yīng)用于一些常規(guī)的設(shè)備,如:過程控制器、電子設(shè)備/工具、安全/監(jiān)視系統(tǒng)、汽車用戶、動力控制系統(tǒng)、私人通信設(shè)備等等;另一方面,SX通信控制器為SX堆棧的硬件平臺,它能實現(xiàn)執(zhí)行整個TCP/IP協(xié)議、物理層及其它相關(guān)的高速通信層——虛擬外設(shè)模塊。邊疆的虛擬外設(shè)庫也在不斷擴(kuò)大應(yīng)用范圍,如:Internet協(xié)議堆棧、通信接口的出現(xiàn)都使設(shè)計師就能將一些產(chǎn)品嵌入Internet。它的整個網(wǎng)絡(luò)連接協(xié)議堆棧工具能使單片網(wǎng)絡(luò)服務(wù)器和E-mail設(shè)備在嵌入式場合中應(yīng)用。平些工具包括TCP/IP網(wǎng)絡(luò)連接協(xié)議、物理層及其它的相關(guān)的高速通信層——虛擬外設(shè)模塊。它的虛擬外設(shè)庫也在不斷擴(kuò)大應(yīng)用范圍,如:Internet協(xié)議堆棧、通信接口的出現(xiàn)都使設(shè)計師就能將一些產(chǎn)品嵌入Internet。它的整個網(wǎng)絡(luò)連接協(xié)議堆棧工具能使單片網(wǎng)絡(luò)服務(wù)器和E-mail設(shè)備在嵌入式場合中應(yīng)用。這些工具包括TCP/IP網(wǎng)絡(luò)連接協(xié)議的物理層界面,使系統(tǒng)設(shè)計師能開發(fā)出一些成本低廉的嵌入式Internet設(shè)備,而不必用到外部的物理通路或PC網(wǎng)關(guān)。
2 電路結(jié)構(gòu)
圖1所示為SX系列產(chǎn)品的內(nèi)部結(jié)構(gòu)框圖??梢钥吹絊X系列產(chǎn)品內(nèi)部使用了2個獨立的具有不同地址總線的存儲器,一個用于程序,另一個用于數(shù)據(jù),兩者是嚴(yán)格區(qū)分開的。它允許數(shù)據(jù)同時從程序存儲流至SRAM,能從程序存儲器訪問數(shù)據(jù)表格。這一結(jié)構(gòu)的優(yōu)點為:取指為存儲傳送可通過多層通道交替進(jìn)行。這意味著在執(zhí)行當(dāng)前指令的同時,能獲取從程序存儲器傳來的下一條指令。實際上這是一種基于RISC的結(jié)構(gòu),其存儲器設(shè)計工藝可使設(shè)備比傳統(tǒng)的MCU塊20倍,且能準(zhǔn)確自由振蕩及可完成編程。SX系列產(chǎn)品采用4個階段傳遞(接收-解碼-執(zhí)行-寫入),所以每一時鐘周期執(zhí)行1條指令。當(dāng)最大操作頻率達(dá)到100MHz時,指令以每10ns的時鐘周期運(yùn)行。
程序存儲器采用EEPROM或Flash,片內(nèi)容量為4 096字節(jié),在使用中重復(fù)寫周期可大于10 000次以上;而數(shù)據(jù)存儲器是SRAM,片內(nèi)容量為262×8位。
除了上面的顯著特點外,它的接口部分還包括以下部分:2個帶8位預(yù)定標(biāo)器的16位定時器,可支持不同的操作模式(PWM模式、同步PWM/捕捉模式以及外部事件計數(shù)器模式);1個帶預(yù)定標(biāo)器的通用的8位定時器,1個模擬比較器,1個brownout檢測器及看門狗定時器;具有一種多源喚醒功能的節(jié)點模式,端口B(8個引腳)上有喚醒/中斷功能;1個內(nèi)部RC振蕩器,可供用戶選擇時鐘模式,RC內(nèi)部振蕩器可調(diào)范圍為31.25kHz~4MHz。
目前SX系列中有SX48BD和SX52BD兩種產(chǎn)品,除了引腳封裝形式不同外其它功能基本相同。從圖2的2種電路外形圖可以看出:SX48BD為48腳封裝,SX52BD為52腳封裝。它們的區(qū)別是A端口不同:后者有8個I/O引腳,而前者卻只有4個。
3 端口特性
由圖2可以看到SX系列都有5個8位的I/O端口(即端口A~端口E),其中端口A的情況與其它4個端口有些區(qū)別。圖3給出了端口A內(nèi)部的情況:硬件結(jié)構(gòu)及端口每個引腳的配置寄存器的情況。端口A提供對稱的驅(qū)動能力。在48腳的SX48BD器件中,端口A只有4個引腳(而不是8個引腳)。每個端口有4個相對應(yīng)的8位寄存器(即方向、數(shù)據(jù)、TTL/CMOS選擇以及上拉允許寄存器)用于配置端口引腳的狀態(tài)。如:選擇高阻輸入或輸出,或選擇TTL或CMOS電壓電平,或選擇接入/關(guān)斷上拉電阻。接照端口引腳最低位與寄存器的最低位相對應(yīng)的關(guān)系,要訪問這些配置寄存器,還必須同時將合理的值寫入MODE(方式)寄存器中。
開機(jī)時,寄存器中所有位初始化為“1”。在軟件的控制下,相關(guān)的寄存器對各個端口位進(jìn)行配置,如圖4所示。
與端口A的情況不同的是,端口B、C、D和E還有額外相關(guān)的寄存器(施密特觸發(fā)允許寄存器),能允許或禁止各個端口引腳上的施密特觸發(fā)器起使用。端口B支持芯片上的微分比較器,RB1端口和RB2端口分別是比較器的負(fù)、正輸入腳,RB0端口則是比較器的輸出引腳。另外,端口B還支持所有8個引腳上的多重輸入喚醒功能。端口B和C還支持多功能定時器T1和T2;RB4和RB5是T1是捕捉輸入引腳,RB6是T1的PWM輸出引腳;RB7是T1的外部事件計數(shù)器輸入引腳;同樣地,RC0和RC1是T2的捕捉輸入引腳,RC2是T2的PWM輸出引腳,RC3是T2的外部事件計數(shù)器輸入引腳。圖5給出了端口B、C、D、E的硬件結(jié)構(gòu)及相應(yīng)端口每個引腳的配置寄存器。
4 存儲器體系結(jié)構(gòu)
程序存儲器——由4K個12位寬度的字組成。程序存儲字由二進(jìn)制程序計數(shù)器編址。復(fù)位時,程序計數(shù)器初始化為0FFFH。假如沒有分支操作,它將會增至設(shè)備的最大值且循環(huán)往復(fù),1個頁面由512個相鄰的程序存儲字組成。在一頁的首址,程序計數(shù)器的低9位均為“0”;而在該頁的末址,程序計數(shù)器的低9位均為“1”。這種頁面結(jié)構(gòu)對程序計數(shù)器無任何影響,程序計數(shù)將能通過頁間繼續(xù)增加。
程序計數(shù)器——包含有執(zhí)行指令的12位地址,低8位存儲在PC寄存器中(02h),而3個高位由狀態(tài)寄存器STATUS(PA0、PA1、PA2)指定,第8位不用。改變狀態(tài)位將導(dǎo)致通過程序存儲頁間跳轉(zhuǎn)和調(diào)用子程序,要優(yōu)先執(zhí)行轉(zhuǎn)移(branch)操作時,用戶程序須初始化狀態(tài)寄存器的高位,以轉(zhuǎn)移到期望的頁面。另一種方式是使用“頁”指令,它按照操作數(shù)的特定值自動地址轉(zhuǎn)移到期望的頁面。
子程序堆?!?個12位存儲寄存器。在寄存器內(nèi)容的物理轉(zhuǎn)移(如從程序計數(shù)器到堆棧,或者與此相反方向以及在堆棧內(nèi)部)操作中規(guī)章能影響堆棧,尤其是調(diào)用和返回操作。堆棧在物理上和邏輯上均與數(shù)據(jù)RAM分離,程序不能對堆棧進(jìn)行讀和寫。
數(shù)據(jù)存儲器——是一個基于RAM的寄存器,包括262個常用寄存器以及9個特殊功能寄存器,所以這些寄存器均為8位寬。數(shù)據(jù)存儲器分16層,從0~F。每個層包含有16個寄存器,另加1個由16個“全局的”寄存器組成額外層。由于這些寄存器由層及“文檔”組成,故這些存儲映射寄存器被稱之為“文檔寄存器”。
尋址方式——每個訪問數(shù)據(jù)存儲存儲器的SX指令,都包含有1個5位操作碼指令,用于指明對哪一個寄存器進(jìn)行訪問??s寫“fr”(文檔寄存器),代表5位寄存器地址標(biāo)志符。例如:在“mov fr,W”指令中,“fr”代表1個5位的值或標(biāo)志,如“mov $ OF,W”指令(將工作寄存器W中內(nèi)容移入至文檔寄存器0Fh)。
有3種不同的尋址方式:間接尋址、直接尋址、半直接尋址。對寄存器尋址模式的選取依賴于指令中5位“fr”的值,例如:
*間接模式:fr=00h
*直接模式:(fr bit 4=0)fr=01h-0Fh
*半直接模式:(fr bit 4=1)fr=10h-1Fh
在圖6中描述了數(shù)據(jù)存儲器的結(jié)構(gòu)圖。
對于間接尋址模式(fr=00),文檔選擇寄存器(FSR)指定需訪問的寄存器。FSR是一個8位存儲映射寄存器(地址為04h)。在間接尋址中,它作為一個指向數(shù)據(jù)存儲器的8位指針。在這種模式下,全局寄存器層及層1~層F均可用,而層0不可用。
對于直接尋址(fr=01-0F),“fr”的值自身已指明需訪問的寄存器,而FSR寄存器被忽略。對于這種尋址模式,只有全局寄存器層才被訪問,若要訪問任何其它的層,必須使用間接或半直接尋址。
對于半直接尋址(fr=10-1F),層數(shù)由FSR的4個高位選擇;而在層內(nèi)的寄存器由“fr”的低4位決定,也就是說,寄存器地址由FSR的4個高位和“fr”的4個低位共同來決定。在這種選址模式下,F(xiàn)SR的低位被忽略,從0號層~F層均可訪問,但是全局寄存器層不可訪問。
圖6列出了寄存器在間接、直接和半直接模式下怎樣進(jìn)行尋址。不管FSR寄存器中為何值,在直接尋址時,16個全局寄存器均可訪問。全局寄存器在間接尋址模式下亦可進(jìn)行訪問,但在半直接模式下,不可訪問。在這16個全局寄存器中,9個為特定功能寄存器(RTCC、PC、STATUS等等),6個為全局寄存器。00被用于間接尋址(INDF)。從0號層~F層的所有寄存器均為全局寄存器。要改變FSR寄存器中的值,程序既可在FSR寄存器寫出8位值,又可用“層”指令。層指令可寫FSR寄存器的4、5及6位,而7號位被用于選擇存儲層的高層或低層。因此,若要改變上部層至另一個上部層,只需使用一個“層”指令;若要改變上層至下層,則“層”指令后面必須用“setb FSR.7”指令。
5 虛擬外設(shè)的概念
虛擬外設(shè)的概念使“芯片軟件系統(tǒng)”得以實現(xiàn),即用軟件模塊代替?zhèn)鹘y(tǒng)的硬件外圍設(shè)備,達(dá)到與硬件設(shè)備一樣的功效。由于運(yùn)用虛擬外設(shè)庫以及良好的速度和靈活性,為工程和產(chǎn)品開發(fā)提供了廣闊的道路。它能大大地降低產(chǎn)品開發(fā)周期,縮短產(chǎn)品研制周期。虛擬外設(shè)庫能為系統(tǒng)設(shè)計師提供一些預(yù)定的方案,或在開發(fā)外設(shè)時為系統(tǒng)設(shè)計師提供先入之見。有了虛擬外設(shè)支持的功能后,設(shè)計師只要專注于其它的應(yīng)用場合。由于標(biāo)準(zhǔn)和協(xié)議的不斷發(fā)展,虛擬外設(shè)與在線重復(fù)編程能力結(jié)合起來為通信行業(yè)提供了有力的開發(fā)前景。概括地說,虛擬外設(shè)有以下優(yōu)點:使用設(shè)備簡單、能減少元件數(shù)目、打入市場快、增加設(shè)計靈活性、與大多數(shù)機(jī)器兼容降低整個系統(tǒng)的成本。
可以實現(xiàn)的虛擬外設(shè)實例有:
*一些通用的通信接口如:I2C、微總線(μ級總線)、SPI、IrDA棧、UART以及調(diào)制解調(diào)器功能。
*Internet連接協(xié)議,如:UDP、TCP/IP、HTTP、SMTP、POP3等;
*頻率信號產(chǎn)生和調(diào)試;
*PPM/PWM的產(chǎn)生;
*Δ-∑ADC;
*DTMF產(chǎn)生/檢測;
*FFT/DFT算法。
由于SX系列硬件結(jié)構(gòu)和虛擬外設(shè)概念的結(jié)構(gòu),為通信開發(fā)部門提供了一個強(qiáng)大的、靈活的開發(fā)平臺;由于它具有高度的處理能力、靈活多變的結(jié)構(gòu),使之有比較高的成本效益。強(qiáng)大的開發(fā)能力能使設(shè)計師有足夠信心緊跟標(biāo)準(zhǔn)以及許多領(lǐng)域內(nèi)的革新,開發(fā)出大量的未來通信控制產(chǎn)品。
評論