當前位置:首頁 > 芯聞號 > 技術(shù)解析
[導讀]芯片設(shè)計的重要性大家都知道,我國也正在大力發(fā)展芯片設(shè)計。業(yè)界內(nèi),如華為,都在自主探討芯片設(shè)計。為增進大家對芯片設(shè)計的了解,本文將為大家?guī)硇酒O(shè)計的示例,主要在于講解以太網(wǎng)控制器芯片設(shè)計與實現(xiàn)。如果你對本文的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

芯片設(shè)計的重要性大家都知道,我國也正在大力發(fā)展芯片設(shè)計。業(yè)界內(nèi),如華為,都在自主探討芯片設(shè)計。為增進大家對芯片設(shè)計的了解,本文將為大家?guī)硇酒O(shè)計的示例,主要在于講解以太網(wǎng)控制器芯片設(shè)計與實現(xiàn)。如果你對本文的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

網(wǎng)絡(luò)控制器芯片的功能與設(shè)計實現(xiàn)

IEEE 802.3協(xié)議是針對以太網(wǎng)CSMA/CD標準的傳輸介質(zhì)物理層(PHY)和介質(zhì)訪問控制協(xié)議(MAC、Media Access Control)來定義的。芯片由PHY、發(fā)送模塊、接收模塊、FIFO、控制模塊組成,其中控制模塊包括寄存器堆、DMA(Direct Memory Access)模塊、流量控制模塊、接收緩沖區(qū)和發(fā)送緩沖區(qū)組成。網(wǎng)絡(luò)控制器芯片的功能框圖如圖1所示。

圖1 以太網(wǎng)控制器芯片的功能框圖

1 IEEE 802.3以太網(wǎng)MAC數(shù)據(jù)幀結(jié)構(gòu)

在發(fā)送數(shù)據(jù)時,發(fā)送模塊自動在待傳數(shù)據(jù)前加上7字節(jié)的前導碼和1字節(jié)的幀起始定界符,緊隨的是6字節(jié)的目的地址和6字節(jié)的源地址,然后長度/類型為2字節(jié),接著是數(shù)據(jù)區(qū),然后是46~1500字節(jié)的數(shù)據(jù)。若發(fā)送時,數(shù)據(jù)長度小于最短長度46字節(jié),發(fā)送模塊自動填補,以達到最小長度,最后是4個字節(jié)的循環(huán)冗余校驗碼。

2 發(fā)送模塊

發(fā)送模塊的作用就是按照CSMA/CD協(xié)議發(fā)送數(shù)據(jù)包。發(fā)送模塊狀態(tài)機控制協(xié)調(diào)各個發(fā)送子模塊的時序,發(fā)送模塊狀態(tài)機如圖2所示。

圖2 發(fā)送模塊狀態(tài)轉(zhuǎn)換圖

S_defer狀態(tài)表示網(wǎng)絡(luò)忙,若網(wǎng)絡(luò)空閑了,經(jīng)過最小的幀間隙時間,進入網(wǎng)絡(luò)空閑狀態(tài)S_idle。若需要發(fā)送數(shù)據(jù)包,經(jīng)過S_pre,S_data,S_pad,S_crc等狀態(tài)發(fā)送,在這當中若檢測到?jīng)_突信號,就進入S_jam狀態(tài)。在S_jam狀態(tài)判斷是local collision還是late collision,若是local collision就進入S_back狀態(tài),按照退避算法重發(fā)當前數(shù)據(jù)幀,否則直接進入網(wǎng)絡(luò)忙狀態(tài),放棄該幀的發(fā)送。

3 接收模塊

接收模塊的任務(wù)就是接收數(shù)據(jù)幀。物理接口收發(fā)器PHY將收到的網(wǎng)絡(luò)數(shù)據(jù)變成二進制數(shù)據(jù)送給接收模塊,接收模塊再把正確的數(shù)據(jù)經(jīng)過接收FIFO和DMA的控制送給接收緩沖區(qū)。接收模塊的功能還包括移除接收到幀的前導碼/幀分隔符;比較目的地址,判斷是否丟棄當前數(shù)據(jù)幀;對接收到的數(shù)據(jù)包做CRC校驗,判斷傳輸過程中數(shù)據(jù)是否出錯。接收模塊狀態(tài)機是接收模塊的核心,控制協(xié)調(diào)接收模塊的各個子模塊的工作與時序。接收模塊狀態(tài)機如圖3所示。

圖3 接收模塊狀態(tài)轉(zhuǎn)換圖

復位后,狀態(tài)機進入S_idle狀態(tài),若數(shù)據(jù)是無效的,就停留在S_idle狀態(tài),否則進入S_pre狀態(tài)。S_pre狀態(tài)和S_sdf狀態(tài)的作用就是去掉前導碼和幀間隔符。當幀間隔符全部檢測到,進入S_data狀態(tài),在S_data狀態(tài)使用字節(jié)計數(shù)器,記錄所收到數(shù)據(jù)的字節(jié)個數(shù),用于比較目的地址。若目的地址匹配則將接收到的數(shù)據(jù)寫入到接收FIFO,否則丟棄該幀,不寫入到FIFO。字節(jié)計數(shù)器的作用還有判斷接收到的數(shù)據(jù)包是否超過幀的最大長度。若在S_pre狀態(tài)、S_sdf狀態(tài)或S_data狀態(tài)出現(xiàn)數(shù)據(jù)有效信號無效的情況,都進入到S_drop狀態(tài)。

圖4 核心模塊的功能仿真

4 控制模塊

控制模塊包含DMA(direct memory access)模塊、流量控制模塊、緩沖區(qū)模塊、寄存器堆模塊和總線接口模塊。DMA模塊的功能是將接收FIFO的數(shù)據(jù)搬運到接收緩沖區(qū),以及發(fā)送緩沖區(qū)的數(shù)據(jù)搬運到發(fā)送FIFO。流量控制模塊端口阻塞的情況下丟幀,這種方法是當接收緩沖區(qū)開始溢出時,通過將阻塞信號發(fā)送回源地址實現(xiàn)的。流量控制可以有效地防止由于網(wǎng)絡(luò)中瞬間的大量數(shù)據(jù)對網(wǎng)絡(luò)帶來的沖擊,保證用戶網(wǎng)絡(luò)高效而穩(wěn)定地運行。兩種控制流量的方式:(1)在半雙工方式下,流量控制是通過反向壓力(backpressure),即我們通常說的背壓計數(shù)實現(xiàn)的,這種計數(shù)是通過向發(fā)送源發(fā)送jamming信號使得信息源降低發(fā)送速度。(2)在全雙工方式下,流量控制一般遵循IEEE 802.3X標準,是由交換機向信息源發(fā)送“pause”幀令其暫停發(fā)送。緩沖區(qū)模塊由一塊32KB的SRAM組成,分為接收緩沖區(qū)和發(fā)送緩沖區(qū),接收緩沖區(qū)和發(fā)送緩沖區(qū)的大小可以由用戶編程決定。緩沖區(qū)以分頁的方式來管理,256B為一頁。主機通過總線接口與芯片交換數(shù)據(jù),通過讀寫寄存器堆來控制芯片的工作。

設(shè)計驗證

本文給出核心功能的驗證過程。把這些核心功能模塊連接成一個環(huán)路(發(fā)送模塊直接與接收模塊相連接),發(fā)送模塊按照802.3協(xié)議發(fā)出數(shù)據(jù)包,接收模塊按照802.3協(xié)議處理這些數(shù)據(jù)包,符合要求的數(shù)據(jù)包送到(接收緩沖區(qū)),這些模塊在Mentor公司的ModelsimSe5.8里面功能仿真波形如圖5所示。

圖5 芯片的實現(xiàn)流程

圖中,clk為系統(tǒng)時鐘;rst為復位信號;tx_req為發(fā)送FIFO請求信號,讓DMA從發(fā)送緩沖區(qū)搬運數(shù)據(jù)到發(fā)送FIFO;tx_fifo_data_out是從發(fā)送FIFO里面出來的8數(shù)據(jù),發(fā)送模塊封裝這些數(shù)據(jù),發(fā)送給PHY;這里沒有對PHY進行驗證,把發(fā)送模塊發(fā)出的數(shù)據(jù)TXD和數(shù)據(jù)使能TXEN直接與接收模塊數(shù)據(jù)端和數(shù)據(jù)有效信號分別相連接;接收模塊把TXD進行串并轉(zhuǎn)換,得到8為rx_data;byte_cnt為接收到rx_data的個數(shù)。

功能仿真通過之后,把核心模塊連接成一個整體(SRAM直接調(diào)用Quartus II的IP Core),通過Quartus II綜合以后,下載到FPGA開發(fā)板里面。用FPGA模擬網(wǎng)絡(luò)控制器芯片,與計算機進行通信。FPGA與PC通過RJ-45相連。應(yīng)用軟件發(fā)一數(shù)據(jù)包給FPGA,接收模塊接收到數(shù)據(jù)包后,通過DMA將數(shù)據(jù)從FIFO搬運到接收緩沖區(qū)。一包數(shù)據(jù)接收完成后,通過附加邏輯,讓FPGA發(fā)送出剛剛接收到的數(shù)據(jù)包,附加邏輯還完成了把接收到的數(shù)據(jù)按位取反的功能。應(yīng)用軟件顯示PC收到的數(shù)據(jù)包,通過比較PC發(fā)給FPGA的數(shù)據(jù)包和FPGA發(fā)送給PC的數(shù)據(jù)包,驗證了核心模塊的功能正確(FPGA的附加邏輯將接收到的數(shù)據(jù)包進行了按位取反操作)。

芯片實現(xiàn)

設(shè)計驗證通過以后,經(jīng)過圖5所示的流程,得到整個芯片的版圖。

本次流片采用華虹NEC 0.35μm CMOS工藝,芯片面積為5640μm×5480μm(不計劃片槽和緩沖區(qū)),芯片有100個管腳。芯片的右上部分是實現(xiàn)MAC層的數(shù)字區(qū),左下區(qū)域是華虹NEC提供的IP Core--32KB的SRAM,用作緩沖區(qū),右下區(qū)域完成PHY功能,周圍是管腳。

以上便是此次小編帶來的“芯片設(shè)計”相關(guān)內(nèi)容,希望大家對本文的內(nèi)容具備一定的了解。如果你喜歡本文,不妨持續(xù)關(guān)注我們網(wǎng)站哦,小編將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉