MPC860的HDLC通道驅(qū)動(dòng)程序的設(shè)計(jì)與實(shí)現(xiàn)
2 MPC860及其SCC接口
MPC860是美國(guó)摩托羅拉公司生產(chǎn)的一種通用的32位嵌入式通信控制器。它是以RISC體系結(jié)構(gòu)為基礎(chǔ)并在片內(nèi)集成有微處理器和多種外設(shè)接口的專(zhuān)用通信芯片,具有強(qiáng)大的通信和網(wǎng)絡(luò)協(xié)議處理能力,可廣泛應(yīng)用于各種通信和網(wǎng)絡(luò)產(chǎn)品中。它主要由嵌入式PowerPC內(nèi)核、系統(tǒng)接口單元(SIU)和通信處理器模塊(CPM)組成。它的CPM提供了豐富的串行通道,包括四個(gè)串行通信控制器(SCC)、兩個(gè)串行管理單元(SMC)、一個(gè)串行外圍接口(SPI)和一個(gè)I2C接口。
本文引用地址:http://www.ex-cimer.com/article/202570.htm
其中,SCC是MPC860最強(qiáng)大的通信設(shè)備。四個(gè)SCC端口通過(guò)相應(yīng)的配置可支持不同的協(xié)議,如以太網(wǎng)、IEEE802.3 10M局域網(wǎng)、HDLC、appleTalk、通用異步收發(fā)協(xié)議UART、同步UART、串行紅外線接口IrDA、二進(jìn)制同步通信BISYNC及透明發(fā)送等網(wǎng)絡(luò)協(xié)議,可以分別用于網(wǎng)橋、路由器、網(wǎng)關(guān)、LAN、WAN及專(zhuān)用網(wǎng)。因此,本文將其中的一個(gè)SCC端口配置成HDLC模式用在VOIP信令網(wǎng)關(guān)中,為信令網(wǎng)和網(wǎng)關(guān)之間提供鏈路支持。SCC數(shù)據(jù)通信基本流程如圖2所示。
當(dāng)處于接收狀態(tài)時(shí),數(shù)據(jù)首先進(jìn)入FIFO。當(dāng)接收FIFO充滿時(shí),CPM向SCC發(fā)請(qǐng)求,并由CPM RISC處理該請(qǐng)求,然后通過(guò)寫(xiě)SDMA將數(shù)據(jù)按照緩存描述符的指示存入指定的緩存中。緩存描述符是進(jìn)行數(shù)據(jù)收發(fā)的基礎(chǔ),它由三個(gè)部分組成:頭16個(gè)比特用來(lái)描述收發(fā)的狀態(tài)模式;接下來(lái)是數(shù)據(jù)長(zhǎng)度描述符,表示即將存入緩存的數(shù)據(jù)長(zhǎng)度;最后是數(shù)據(jù)指針,它指向即將存入數(shù)據(jù)的緩存。發(fā)送過(guò)程與接收過(guò)程基本上是一樣的,通過(guò)緩存描述符,能夠正確讀寫(xiě)緩存。
評(píng)論