文獻標識碼: A
文章編號: 0258-7998(2015)05-0057-03
0 引言
無線傳感器網絡是結合了傳感器應用、無線局域網、大數據快速處理等技術的新興無線信息網絡,基于某種特定的無線網絡協議,快速建立數據傳輸的無線網絡[1]。由于無線傳感器網絡的應用價值和芯片設計技術的發展,關于無線傳感器網絡的專屬控制芯片設計的研究應運而生。
IEEE 802.15.4 是一種低功耗低速率的無線局域網協議,定義了物理層(PHY層)和介質訪問控制層(MAC層)。MAC層主要是為上層訪問信道提供服務接口,并且通過SAP控制PHY層的無線數據收發[2]。本文基于IEEE 802.15.4 MAC協議,提出了無線傳感器網絡MAC層的ASIC設計方案。
本文的芯片設計能基本實現MAC層協議的功能,設計了內嵌CSMA-CA算法控制器的MAC收發部分和8位RISC CPU。M收發芯片部分可以和RISC CPU進行數據交互,其內嵌的CSMA-CA算法控制器實現競爭信道機制組建無線網絡,單獨的CPU設計可以更好地實現無線傳感器網絡的數據處理功能。
1 芯片整體設計方案
芯片整體設計框架如圖1所示,整個芯片從功能上分為五部分:發送部分、接收部分、精簡指令CPU、協調器和SPI接口。協調器使能控制發送狀態機和接收狀態機,通過協調器指令集運行CSMA-CA算法,實現信道競爭訪問機制。CPU基于哈佛架構的RISC精簡指令集設計,可通過SPI總線進行數據交互。
數據發送部分主要包括發送狀態機、發送FIFO、發送數據仲裁、CRC校驗計算、發送計數等,數據發送時需要建立符合IEEE 802.15.4 協議格式的數據幀,發送數據仲裁避免發送數據沖突[3]。
數據接收部分主要包括接收狀態機、地址比較器、接收計數器、幀解析、幀起始檢測、接收FIFO、接收數據通路、CRC校驗。協調器發送接收使能給接收狀態機,地址比較器、接收計數器、幀起始檢測、接收幀解析等功能模塊協調作用,根據協議格式順序存入接收FIFO[4]。
2 邏輯設計與仿真
2.1 RISC CPU邏輯設計
考慮芯片設計成本和設計周期,本文的CPU采用簡單的總線架構,控制器指令和數據通路的數據都是從總線獲得。基于8位數據線和12位地址線獨立分離的哈佛架構,數據線和地址線獨立運行簡化了芯片邏輯結構。CPU設計主要包括ALU算術邏輯單元、存儲器、指令譯碼器、寄存器等子模塊,指令集包括九條基本運算指令。本文使用Mentor公司的ModelSim軟件進行仿真驗證,圖2為RISC CPU頂層仿真波形。
2.2 MAC層邏輯設計
本文的MAC層設計主要包括發送部分、接收部分和協調器。發送部分的功能是將上層提供的數據進行封裝之后通過 PHY 芯片發送,封裝是按照物理層的幀格式進行的,包括前導序列碼、起始分隔符、幀長度、有效負載[5]。發送模塊的核心設計是發送狀態機,用來產生發送過程各子模塊的控制信號,發送狀態機的狀態流程圖如圖3所示。
接收部分的主要功能是完成接收來自PHY芯片的數據包,并對數據包進行解包,包括前導碼序列和幀起始分隔符的檢測、地址解析、CRC 校驗以及將物理層的數據負載部分存儲在FIFO[6]。接收部分從邏輯上分析是發送部分的逆過程,接收發送狀態機的狀態流程圖如圖4所示。
協調器是MAC層通信的大腦,通過使能控制MAC數據收發,內嵌CSMA-CA算法控制器實現競爭信道訪問。由于本芯片單獨設計了CPU,協調器主要包括單獨存儲協調器指令集的指令存儲器、MAC計時器和產生控制信號的CSMA-CA算法控制器。協調器指令集只實現CSMA-CA算法,與CPU的指令存儲器控制CPU讀寫不同。
3 芯片ASIC設計流程
ASIC是專用集成電路的簡稱,是當今流行的一種根據特殊市場需求定制設計的芯片設計技術。ASIC設計流程包括前端設計和后端設計兩個重要階段,前端設計主要包括RTL代碼的編寫、仿真、綜合以及靜態時序分析,后端設計主要是把前端綜合產生的門級網表實現成物理版圖,并驗證版圖是否滿足時序收斂和設計規則要求。本芯片基于ASIC設計流程,完成了架構設計、RTL coding、驗證、綜合、物理設計,并通過Encounter 生成了物理版圖。
3.1 綜合
綜合是芯片設計的重要步驟,是連接前端設計和后端設計的重要橋梁。本設計采用中芯國際0.13 μm CMOS工藝庫,利用綜合工具Synopsys的DC把RTL代碼綜合成門級網表,門級網表是后端設計所需要的源文件。DC首先讀入工藝庫lib、SDC約束腳本等文件,然后進行綜合優化生成門級網表。
3.2 MAC層邏輯設計
綜合生成物理設計所需要的門級網表后,使用物理設計軟件Encounter進行芯片后端設計。后端物理設計主要包括布圖規劃與布局、電源規劃、插入時鐘樹、布線等。電源規劃對于芯片后端設計至關重要,良好的電源規劃可以為整塊芯片提供一個均勻的供電網格。本芯片的局部電源網絡如圖5所示,VDD和VSS均勻地分布在芯片內部。
時鐘是芯片設計的核心,一個好的時鐘樹決定了芯片時序收斂的難易程度和工作性能。布圖規劃與布局結束后即可進行時鐘樹(clock tree)插入,插入時鐘樹的目的是使芯片所有邏輯單元接收到的時鐘信號時間一致,時序基本不存在偏差。芯片時鐘樹分布圖如圖6所示。
4 結論
無線傳感器網絡作為新一代智能無線網絡,已經在智能家居、醫療、煤礦、國防等領域獲得廣泛應用。本文提出了基于IEEE 802.15.4協議的MAC層通信芯片的ASIC設計方案,本方案低功耗且功能完備,具有科研與應用雙重價值。
參考文獻
[1] Jian Qiang,Gong Zhenghu,Zhu Peidong,et al.Overview of MAC protocols in wireless networks[J].Journal of Software.2008,19(2):389-401.
[2] HEIDEMANN J,ESTRIN D.An energy-efficient MAC protocol for wireless sensor networks[J].IEEE Info com,2002,3(6):1567-1576.
[3] Zhang Ming,Wang Suoping.An novel energy-efficient MAC protocol based on collision aviodance for wireless sensor networks[C].Proceeding of the 2009 5th International Conference on Wireless Communications,2009,4.
[4] Jennifer Yick,Biswanath Mukherjee,Dipak Ghosal.Wireless sensor network survey[J].Computer Networks,2008(52):2295-2298.
[5] Tong Jigang,Zhang Zhenxin,Chen Zengqiang,et al.Design of node with FPGA in the wireless sensor network[J].Chinese Journal of Sensors and Actuators,2009,22(3):417-421.
[6] AKYILDIZ L F,WEILIAN S.A survey on sensor networks[J].IEEE Communications Magazine,2002,40(8):102-114.