在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > SoC技術(shù)在FC芯片設(shè)計(jì)中的應(yīng)用

            SoC技術(shù)在FC芯片設(shè)計(jì)中的應(yīng)用

            作者: 時(shí)間:2012-04-20 來源:網(wǎng)絡(luò) 收藏

            數(shù)據(jù)收發(fā)緩沖區(qū)的定義

            數(shù)據(jù)緩沖區(qū)TX-FIFO、RX-FIFO的定義如表2所示:途中發(fā)送緩沖區(qū)是33位,低32位是發(fā)送的數(shù)據(jù),第32位用于表示當(dāng)前碼字是否為有序集碼。接收緩沖區(qū)是36位,低32位是接收到的數(shù)據(jù),高位部分保存FC-2幀的CRC校驗(yàn)結(jié)果、8b/10b碼的譯碼校驗(yàn)等信息。

            28.jpg

            5.1 功能概述

            FC芯片中有兩路“FC幀收發(fā)模塊及其數(shù)據(jù)緩沖器”,它們實(shí)現(xiàn)FC-2層協(xié)議中的幀打包、開包。它是整個(gè)系統(tǒng)的軟硬件交會點(diǎn),是整個(gè)系統(tǒng)的核心,其關(guān)鍵在于制定相關(guān)的設(shè)計(jì)規(guī)則。

            5.2 數(shù)據(jù)緩沖區(qū)的使用規(guī)則

            根據(jù)多路總線并行工作的原則,設(shè)置四塊獨(dú)立的數(shù)據(jù)緩沖區(qū),采用雙口RAM,用于在CPU和幀收發(fā)器之間交換數(shù)據(jù)。收發(fā)數(shù)據(jù)緩沖區(qū)的使用規(guī)則如下:

            (1)發(fā)送緩沖區(qū)TXBUF。根據(jù)圖3所示的FC-2幀格式,該緩沖區(qū)用于存放幀頭和有效數(shù)據(jù)。前24個(gè)字節(jié)是固定存放幀頭的幀頭區(qū),后面是有效數(shù)據(jù)區(qū)。發(fā)送時(shí),模塊TXF-CTL從幀頭區(qū)取幀頭信息發(fā)送,根據(jù)寄存器中發(fā)送起始地址(TXOFFSET)和發(fā)送個(gè)數(shù)(TXCOUNT)的值從TXBUF中連續(xù)取數(shù)據(jù)發(fā)送。這里,只設(shè)置1個(gè)幀頭區(qū),是考慮到在“序列”中幀頭具有相關(guān)性,同時(shí)1個(gè)幀頭區(qū)不存在多個(gè)區(qū)域的切換,簡化了硬件實(shí)現(xiàn)。

            (2)接收緩沖區(qū) RXBUF。該緩沖區(qū)采用循環(huán)隊(duì)列的方式,由模塊RXF-CTL順序?qū)懭霐?shù)據(jù),數(shù)據(jù)的存儲順序如圖3所示的FC-2幀格式。在完成1幀數(shù)據(jù)接收后,模塊 RXF-CTL要在寄存器中表明當(dāng)前幀在RXBUF中的接收起始地址(RXOFFSET)和接收到的個(gè)數(shù)(RXCOUNT)。CPU讀取寄存器 RXCOUNT后,該寄存器自動(dòng)清零。上述使用規(guī)則是整個(gè)系統(tǒng)進(jìn)行設(shè)計(jì)的要點(diǎn)。

            工作過程

            數(shù)據(jù)的發(fā)送過程發(fā)送:

            (1)CMD_RESET。模塊TXF-CTL復(fù)位,進(jìn)入空閑態(tài)。

            (2)CMD_TEST:由CPU直接控制數(shù)據(jù)的發(fā)送,模塊TXF-CTL進(jìn)入空閑態(tài)。

            (3)CMD_START_TX1:在空閑態(tài)并且CMD_TEST和CMD_START_TX2都無效時(shí),進(jìn)入按幀發(fā)送數(shù)據(jù)的狀態(tài),模塊TXF-CTL發(fā)出SENDING信號。模塊TXF- CTL先向FC發(fā)送通道的TX-FIFO發(fā)送有序集碼lDLE(K28.5D21.4D21.5D21.5);根據(jù)SOF碼型寄存器發(fā)送相應(yīng)的SOF;然后從TXBUF的幀頭區(qū)取數(shù)據(jù)依次發(fā)送;以后,如果數(shù)據(jù)從TXBUF取,則根據(jù)寄存器發(fā)送起始地址(TXOFFSET)和發(fā)送個(gè)數(shù)(TXCOUNT)從 TXBUF中取出對應(yīng)的數(shù)據(jù)發(fā)送;發(fā)送完有效數(shù)據(jù)后,再根據(jù)EOF碼型寄存器發(fā)送相應(yīng)的EOF;最后再發(fā)一個(gè)有序集碼 IDLE(K28.5D21.4D21.5D21.5)。一幀數(shù)據(jù)發(fā)完后,將SENDING信號清零,CMD_START_TX1清零,發(fā)中斷信號 INTTXi,然后回到空閑態(tài)。發(fā)送過程只有CMD_RESET可以中斷。

            (4)如果數(shù)據(jù)來在ULP-FIFO,則讀發(fā)送個(gè)數(shù)(TXCOUNT),從ULP-FIFO中取數(shù)發(fā)送,若發(fā)送個(gè)數(shù)(TXCOUNT)大于FC-2幀規(guī)定的長度,則按2112字節(jié)的長度分多幀發(fā)送,每幀完畢,自動(dòng)修改幀頭中的幀記數(shù)值,并且自動(dòng)選擇相應(yīng)的SOF和EOF定界符;若發(fā)送的過程中ULP-FIFO空,則自動(dòng)結(jié)束這一幀的發(fā)送,并啟動(dòng)超時(shí)定時(shí)器,等待ULP-FIFO中的數(shù)據(jù)。當(dāng)發(fā)送個(gè)數(shù)(TXCOUNT)規(guī)定的數(shù)據(jù)發(fā)完后,或者超時(shí),則將SENDING信號清零,CMD_START_TX1 清零,發(fā)中斷信號INTTXi,然后回到空閑態(tài)。發(fā)送過程只有CMD_RESET可以中斷。

            (5)CMD_START_TX2:在空閑態(tài)當(dāng)CMD_START_TX2有效時(shí),模塊TXF-CTL按有序

            集碼寄存器和有序集碼參數(shù)寄存器的定義發(fā)送有序集碼。

            數(shù)據(jù)的接收過程

            數(shù)據(jù)的接收有兩種方式:由CPU直接控制;由RXF-CTL按FC-2幀格式接收數(shù)據(jù)。CPU可通過FC-2幀收發(fā)控制器的寄存器向模塊RXF-CTL發(fā)命令來控制數(shù)據(jù)發(fā)送:

            (1)CMD_RESET。模塊TXF-CTL復(fù)位,進(jìn)入空閑態(tài)。

            (2)CMD_TEST:由CPU直接控制數(shù)據(jù)的接收。

            (3)CMD_START_RXi:在空閑態(tài)并且CMD_TEST無效時(shí),進(jìn)入按幀接收數(shù)據(jù)的狀態(tài)。模塊RXF-CTL從FCSET-A的RX-FIFO中收到有序集碼SOF后,發(fā)出 RECEIVE信號,表示已經(jīng)開始1幀數(shù)據(jù)的接收。模塊RXF-CTL將收到的數(shù)據(jù)依次寫入循環(huán)緩沖區(qū)RXBUF。再收到任一個(gè)有序集碼后,1幀數(shù)據(jù)接收結(jié)束,將RECEIVE信號清零。更新寄存器接收起始地址(RXOFFSET)和接收到的個(gè)數(shù)(RXCOUNT)。如果接收到的CRC碼無效或者最后一個(gè)有序集碼不是EOF,則將接收有錯(cuò)(RXERR)置‘1’,否則發(fā)出INTRXi中斷信號,表示收到1幀正確的數(shù)據(jù)。繼續(xù)下一幀的數(shù)據(jù)的接收。在1幀數(shù)據(jù)接收的過程中,只有CMD_RESET可以中斷;如果尚未開始接收1幀數(shù)據(jù),則CMD_TEST可使其回到空閑態(tài)。CPU讀寄存器RXOFFSET、 RXERR和RXCOUNT可知道接收到的數(shù)據(jù)存放的地址和個(gè)數(shù)以及數(shù)據(jù)幀是否有效。

            另外CMD_START_Rxi還用來控制FC接收通道中的RX-FIFO控制器。CMD_START_Rx1控制FC接收通道按FC-2幀接收數(shù)據(jù)存入RX-FIFO;CMD_START_Rx2控制 FC接收通道接收所有數(shù)據(jù)(除了連續(xù)的IDLE有序集碼之外)存入RXFIFO。

            內(nèi)置CPU的配置及ULP的設(shè)計(jì)

            內(nèi)置CPU通過嵌入的軟件完成FC-2層的序列和交換的協(xié)議,同時(shí)實(shí)現(xiàn)ULP與上層的通訊。

            CPU外設(shè)的配置

            CPU配置的外設(shè)和總線接口定義如下:

            (1)兩個(gè)RS232串行口。

            (2)看門狗定時(shí)器:WATCHDOG-TIMER。

            (3)兩個(gè)FC-2層通訊用的定時(shí)器:FCTIMER1,F(xiàn)C-TIMER2。

            (4)接收兩路FC-2幀收發(fā)控制器中斷的PIO:INTFRAME-PIO。兩個(gè)接受來自RX-FIFO的有序集譯碼的PIO:ORDERSET- PIO1,ORDERSETPIO2。兩個(gè)內(nèi)總線接口,用于操作兩路FC-2幀收發(fā)控制器。可根據(jù)操作功能需要,對FC-2幀收發(fā)控制器的各寄存器進(jìn)行定義。

            29.jpg



            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉