《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 八通道多協議串行通信控制器的功能驗證
八通道多協議串行通信控制器的功能驗證
摘要: 隨著集成電路進入數百萬門ASIC、可復用的知識產權和系統芯片的時代,對驗證環境的開發以及使用效率、模塊化、層次化、可配置性和可復用性提出了更高的要求。本文以一款八通道多協議的串行通信控制器芯片為載體,介紹了基于總線功能模型的功能驗證方法,該方法具有一定通用性。
Abstract:
Key words :
0 引言
   
集成電路設計過程中,驗證占據了設計工作量的70%。驗證的精確程度直接影響流片后邏輯功能的正確率,直接關系到芯片設計的成敗。另一方面,提高驗證工作的效率,將對縮短整個芯片的設計周期、減少產品上市時間具有非常重要的意義。
    隨著集成電路進入數百萬門ASIC、可復用的知識產權和系統芯片的時代,對驗證環境的開發以及使用效率、模塊化、層次化、可配置性和可復用性提出了更高的要求。本文以一款八通道多協議的串行通信控制器芯片為載體,介紹了基于總線功能模型的功能驗證方法,該方法具有一定通用性。

1 芯片簡介、驗證計劃及驗證策略
1.1 芯片簡介

    八通道串行通信控制器(以下稱通信控制器)用于實現高級鏈路控制協議的高速串行通信。該芯片支持同步協議、異步協議、HDLC/SDLC等協議,可以在Intel總線模式和Motorola總線模式下使用,是為電信業務特別優化的串行通信控制器,廣泛用于時分復用通信應用系統,如時分分組交換網絡,局域網網關、網橋等。 
    該通信控制器的總體結構如圖1所示,按照功能原理,其硬件結構可分為兩個組成部分:總線接口和串行通道控制電路。總線接口包括16位數據總線(DO~D15)、9位地址總線(A0~A8)、控制輸入信號、終端請求輸出信號、直接內存存取(direct memory access,DMA)接口信號以及地址鎖存允許(address latch enable,ALE)信號;串行通道控制電路包括8個相同的、獨立的全雙工串行接口(串行通道0~7)。每個通道又包括控制邏輯和接收發送FIFO。控制邏輯主要是波特率發生器(BRG),數字鎖相環(DPLL),時隙分配電路(TSA),協議控制電路,定時器和編解碼電路等模塊。同時,該通信控制器具有一個28位的可配置輸入、輸出全局端口(PA0-7,PB0-7,PC0-7,PDO-3)。

1.2 驗證策略分析及驗證計劃制定
   
該芯片的驗證難點在于,通信控制器支持的協議多,功能復雜,各種劃分方式以及功能的排列組合數量非常多。具體而言,通信控制器有8個通道,每個通道有32個8位配置寄存器,平均每個配置寄存器約有10種配置值,寄存器配置排列組合的數量更是驚人。
    針對上述難點,所采取的驗證策略是,芯片的功能驗證分類按數據傳送協議將驗證分為異步、同步、HDLC和并口四類,每一類按照總線接口又分為Intel總線和Motorola總線,再按照數據傳送類型分為中斷模式和DMA模式,基于該分類方法驗證通信控制器的各項可配置功能,如CRC檢驗、奇偶校驗、流量控制等。
    在驗證層次上,由于組成通信控制器芯片的8個通道是獨立的、相同的,故采取先在子系統級驗證一個單通道的數據傳送,繼而再驗證全芯片8個通道的數據傳送的層次化驗證方法,而如果每一個層次都需要構造一個測試平臺,任務就非常復雜。本文采取在兩個層次采用統一的驗證環境的方法,從而降低了驗證的復雜度,大大提高驗證效率,縮短整個芯片的設計周期。開始驗證之前首先需要制定一個完整的驗證計劃。驗證計劃的制定要針對設計中可能出現的問題,并涵蓋設計要實現的所有功能。通信控制器需要驗證各種數據傳輸操作和一些其他功能。表1列出了該通信控制器的部分驗證計劃,完整的驗證計劃遠比表1龐大,限于篇幅在此不一一給出。

2 驗證方案
2.1 采用總線功能模型構造驗證平臺

    總線功能模型(BFM)是近年在測試平臺中廣泛采用的一種能提高驗證重用效率的激勵生成方法。總線功能模型的作用是通過封裝低層總線的時序,向高層提供一個調用接口。總線功能模型的構建有狀態機和任務庫兩種方式。通信控制器的驗證采用了任務庫的方式來進行總線功能模型設計。采用模塊的封裝方式把內部操作的細節封裝起來,通過“模塊名,任務名”的方式復用模塊,從而建立結構化的testbench。基于總線功能模型的驗證環境如圖2所示。

    驗證環境的下層是BFM和通信控制器邏輯電路組成的物理層。在這一層,BFM與通信控制器的引腳連接,根據總線協議驅動總線信號,同時將這種驅動行為抽象成能夠被上層調用的任務(task)。上層是testcase組成的測試層,testcase根據所驗證的功能產生測試數據,通過調用下層提供的任務,將產生的測試數據激勵輸入到被測電路中并監測數據處理結果。可以看出,BFM通過對總線信號的時序進行抽象和封裝,使測試環境有了層次化的結構特點。這種層次化的特點能提高測試環境的開發效率和可重用性,從而滿足驗證通信控制器的如下要求。
    首先,驗證環境層次化的結構保證了在各個層次的驗證模塊開發可以同時進行,提高開發效率。BFM將通信控制器測試環境的開發強度和復雜程度分散到了物理層和測試層兩個不同的抽象層。在物理層,BFM專注于實現Intel總線或者Motorola總線的各個時序操作;在測試層,testcase專注于針對通信控制器待驗證的功能來設計測試向量。上層的testease和下層的BFM在定義了任務接口后,物理層和測試層的測試模塊可以進行同時并行開發。其次,由于testease和BFM處于兩個不同層次,所以可以在各自的層次上實現復用。處于上層的testcase,可以在后仿真階段直接復用;而處于下層的BFM不僅可以復用在后仿真階段,在引腳接口信號通信協議相類似的項目開發中亦可重用。

   驗證平臺總線功能模型中一個cpu寫周期的

 


    在對某個設備的寄存器進行讀操作時,譬如,向地址為ADDR的狀態寄存器寫入DATA數據,在testcase里調用該任務可以寫成:


2.2 功能覆蓋率
   
功能驗證的另一個關鍵問題是驗證工作到什么程度,如何保證驗證的充分性。對于通信控制器芯片,更關心的是功能覆蓋率。功能覆蓋率是衡量設計的原始要求實現程度的指標。
    通信控制器功能實現主要體現在寄存器的配置組合上。前面提到,所采取的驗證策略是在單通道下分別在Intel總線和:Motorola總線接口按照數據傳送協議為劃分標準,將驗證分為異步、同步和HDLC三大類,然后再按照數據傳送類型,在中斷方式和DMA方式下驗證各個功能。最后再測試全通道的數據收發。通信控制器的每一個功能均有相應的testcase,配置寄存器的每一位都保證有翻轉。按照驗證計劃,驗證該通信控制器開發的testcase共計225個,通信控制器的全部功能均被覆蓋。
    圖3~6示例了幾個testcase的仿真波形圖。圖3的testcase用來驗證通信控制器Intel總線接口異步協議DMA傳送模式下的數據傳送,DWT(DMArequest transmit)是DMA傳送請求信號,wrl和wr2是內部信號,當FIFO從數據總線上每成功讀取8bit數據時,wrl或者wr2信號跳變一次,結果顯示該testcase驗證通過。圖4是Motorola總線接口異步協議中斷傳送模式下數據傳送的一個testcase,圖5是Intel總線接口HDLC協議中斷傳送模式下數據傳送的一個testease。與圖3的分析相類似,波形顯示這兩個testcase驗證通過。圖6是驗證28個全局并口發送數據的testease,波形顯示四個并口先后發送數據55、66、77和F,該testease驗證通過。

2.3 錯誤狀態的驗證
   
對錯誤狀態的驗證是一個很重要的環節。在testease中,加入錯誤狀態激勵,觀察輸出結果是否符合預期。一些錯誤狀態比較容易實現,如某個配置項賦定義以外的值,只需在配置文件相應行上填入錯誤狀態配置值即可。再如很短的時間內發生了同一通道的兩次配置(即配置覆蓋),這只需在配置文件中的同一配置時刻參數段加入相同通道的又一次配置即可。另外一些錯誤狀態可以根據通信協議自行設定,如發送端和接收端配置的數據幀頭同步字符不一致,接收時鐘和發送時鐘不同步等。
    圖7是一個錯誤狀態驗證的testcase波形圖。該testease是驗證通信控制器在Intel總線接口,同步協議的中斷方式傳送模式下數據傳送。發送端的同步幀設置為80,接收端的同步幀設置為8l。按照同步協議,同步幀不一樣,接收端的數據不能寫入FIFO。如所預期,wrl和wr2未發生跳變,表明發送數據沒有被接收。

2.4 后仿真與樣片測試
   
在實際電路中,信號的跳變不是瞬間完成的,而是具有一定的時延。功能驗證主要是驗證電路的邏輯功能,信號的跳變是瞬間完成的,因此只能在功能上證明設計的正確性,而無法證明在實際電路中邏輯功能依然正確。后仿真是對版圖提取了寄生參數以后考慮了互聯延遲進行的仿真。驗證在引入實際時延之后系統功能是否正確。
    構建后仿真環境的思想與構建前仿真的思想基本相同。在功能驗證過程使用結構化和逐層抽象的方法來設計驗證環境,因此在后仿真的過程中可以復用前仿真的環境,測試用例也可以直接復用到后仿真的過程中。圖8是后仿真的一個波形。

    采用上面介紹的驗證方案,作者成功地對八通道多協議串行通信控制器芯片進行了功能驗證,該芯片已成功流片并進行了樣片測試。將功能驗證時各testcase芯片每個管腳的輸入以及相應的輸出轉化為測試碼輸入測試機,驗證對于相同的輸入,芯片的實際輸出與功能驗證時的輸出是否相符。測試碼按照測試機的要求有一定的格式給出了一行測試碼。芯片目前也通過了樣片測試并已經實際應用。

3 結語
    大規模集成電路的驗證是一項非常復雜的任務,使用總線功能模型構建可復用的驗證平臺能夠提高集成電路的驗證效率,縮短產品開發周期。本文采用總線功能模型實現了一款八通道多協議串行通信控制器芯片的功能驗證,相信這種方法對相關領域的設計驗證具有一定的參考價值。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 黄色国产精品 | 国产桃色精品网站 | 色综合伊人色综合网站 | 日本精品久久久久中文字幕8 | 亚洲国产精久久久久久久春色 | 亚洲天堂久久精品成人 | 手机在线精品视频 | 精品一区二区在线观看 1080p | mitun视频在线播放 | 欧美午夜性视频 | 久久精品国产亚洲欧美 | 色综合狠狠操 | 福利一区在线观看 | 久久手机视频 | 欧美日韩高清在线观看 | 综合激情网五月 | 久操色| 激情网站免费 | 婷婷综合视频 | 天堂在线精品 | 国产精品亚洲αv天堂2021 | 老女人作爱视频 | 精品美女在线 | 日韩欧美在线播放视频 | 色爱区综合激月婷婷激情五月 | 亚洲精品aaa | 精品国产成人系列 | 久久国产精品电影 | 一级毛片a免费播放王色 | 午夜动作片 | 国产女人久久精品 | 激情综合网址 | 免费观看高清视频ww | 亚洲欧美国产精品久久久 | 国产欧美自拍 | 婷婷激情五月小说综合无弹窗 | 97精品视频在线 | 国产一级片视频 | 色盈盈影院 | 风间由美性色一区二区三区 | 欧美日韩在线国产 |