基于82C52功能仿真驗證的研究
摘 要:首先介紹了利用仿真工具進(jìn)行電路功能仿真驗證的過(guò)程與方法,以及仿真方案的確定,并以82C52為例詳細闡述了仿真驗證中激勵文件的編寫(xiě)和對82C52進(jìn)行功能驗證的具體步驟。最后簡(jiǎn)單介紹了82C52的功能及其中各種寄存器的作用以及對寄存器的編程。
1 引 言
功能仿真主要驗證被驗證電路功能的正確性,主要分RTL級仿真與netliST的仿真。Netlist又分為DC輸出和As 輸出。由于neflist的仿真帶sdf文件(延時(shí)信息),所以要比RTL的仿真準確,而且越到流程的后端,仿真的延時(shí)信息越真實(shí),仿真結果越接近實(shí)際。
2 驗證方案的確定
本次設計的驗證方案是根據單片機對外部串口電路的控制來(lái)實(shí)現的,驗證方案的基本框圖如圖1所示。
圖1 82C52測試平臺
3 仿真所要準備的文件
RTL(Pre sire):testbench(仿真激勵),Design(被仿真的設計)DC_ netlist:testbench(仿真激勵),Design(被仿真的設計),saf(延時(shí)信息,由DC寫(xiě)出),SimulatiONlibrary
Astro_ netlist(post sim):testbench(仿真激勵),Design(被仿真的設計),Sdf(延時(shí)信息,由 寫(xiě)出),Simulation library
仿真的主要工具是VCS,主要命令是:>VC$testbeneh.v design.v—RI—M,同時(shí)還要進(jìn)行代碼覆蓋率的分析。由于在最開(kāi)始的時(shí)候寫(xiě)的testbench覆蓋率一定不全,所以需要后來(lái)的不斷完善來(lái)提高代碼覆蓋率以達到設計要求。用VCS做代碼覆蓋率分析的主要命令是:在編譯時(shí)加入可選項一cmline+tsl+FSM+eond,這是四種覆蓋率,可以根據需要只選其中的一個(gè)或幾個(gè);VCS—cm—PP gui察看覆蓋率的結果。
4 testbench的編寫(xiě)
把82C52與8032以及一些外圍接口電路連接在一起組成一個(gè)簡(jiǎn)單的系統,通過(guò)匯編程序來(lái)控制82C52以達到仿真的目的。所以testbeneh的編寫(xiě)也主要是完成這個(gè)簡(jiǎn)單系統的搭建,讀取事先編好的單片機匯編指令就可以了。
評論