TMS320LF2407與LAN91C111型嵌入式以太網(wǎng)接口電路的實(shí)現(xiàn)
TX INT:當(dāng)TX completion FIFO不為空時(shí)置1e;
本文引用地址:http://butianyuan.cn/article/266252.htmTX EMPTY INT:當(dāng)TX FIFO為空時(shí)置to;
AUTO RELEASE:如果置為1,發(fā)送包成功后,packet number不寫(xiě)到TX completion FIFO中,而且它所使用的存儲(chǔ)空間被自動(dòng)釋放。
(7)使用“每發(fā)送一個(gè)包產(chǎn)生一個(gè)中斷”方案時(shí),AUTO RELEASE=0,該方案的流程如上文所述。使用“每發(fā)送一個(gè)序列的包產(chǎn)生一個(gè)中斷”方案時(shí)允許TX EMPTY INT和TX INT,AUTORELEASE=1,當(dāng)發(fā)送完FIFO中的最后一個(gè)包后,產(chǎn)生TX EMPTY INT中斷。若出現(xiàn)嚴(yán)重的發(fā)送錯(cuò)誤,則產(chǎn)生TX INT中斷,同時(shí)將發(fā)送失敗的包的packet number保存到FIFO Ports寄存器,這樣DSP就可以知道發(fā)送過(guò)程停止了。這種方案可以減少DSP的負(fù)擔(dān),而且存儲(chǔ)空間的釋放也更迅速。當(dāng)AUTO RELEASE=1時(shí),DSP不能得到成功發(fā)送包的packet number。
4.2.3 接收數(shù)據(jù)包流程
(1)DSP設(shè)置receive control寄存器中的RXEN位,允許接收包。
(2)含有正確地址的包被接收到,從MMU請(qǐng)求存儲(chǔ)空間,并分派一個(gè)packet number,內(nèi)部的DMA邏輯產(chǎn)生連續(xù)的地址,并將接收到的字寫(xiě)到memory中,如果超界,包被丟棄,存儲(chǔ)空間被釋放。當(dāng)檢測(cè)到包的結(jié)束,Status Word被寫(xiě)到接收包的最前面,byte count寫(xiě)到第二個(gè)字。如果CRC校驗(yàn)正確,packet number被寫(xiě)到RX FIFO,由于RX FIFO非空時(shí),因此將產(chǎn)生RCV INT中斷;如果RCR校驗(yàn)不正確,則存儲(chǔ)空間被釋放,而且不產(chǎn)生中斷。
(3)DSP接收到中斷后開(kāi)始執(zhí)行中斷處理程序,首先讀入Interrupt Status寄存器,如果產(chǎn)生接收中斷(RCV INT位為1),則可從FIFO ports寄存器得到接收包的packet number,而且可從data register將接收包傳送到DSP的內(nèi)存或外存中。當(dāng)處理結(jié)束,DSP向處理器發(fā)送REMOVE AND RELEASE FROM TOP OF RX命令(即設(shè)置寄存器MMUCOM為0x0060)以釋放使用的存儲(chǔ)空間和packet number。
5 結(jié)束語(yǔ)
該系統(tǒng)能夠正確地接入快速以太網(wǎng),具備100/10Mbit/s、全雙工/半雙工自適應(yīng)等多種功能,符合IEEE802.3/802.3μ-100Base-TX/1Obase-T規(guī)范,其嵌入式以太網(wǎng)接口支持RJ45和以太網(wǎng)的連接,可以通過(guò)以太網(wǎng)接入Internet,從而實(shí)現(xiàn)從Internet上監(jiān)控嵌入式設(shè)備。
電路相關(guān)文章:電路分析基礎(chǔ)
評(píng)論